2016-05-02 12 views
0

私は画像内のオブジェクトを追跡しています。結果をプロットしてみたい。そこで私はimage2D()関数を使って2つの連続した画像をプロットし、数値でオブジェクトにラベルを付け、次にimage1からimage2へのマッピング方法を示します。 16 => 0, 17 => 16, 18 => 0, 19 => 17, 20 => 18, 21 => 20, 22 => 19, 23 => 22, 24 => 23, 25 => 25, 26 => 24 0 =オブジェクトが死んでいます。Rパネルプロットで、あるプロットから別のプロットへ線または矢印を描く方法は?

ここで、視覚的に直感的な表示のために、画像1のn番目のオブジェクト(例えば26)から画像2のm番目(すなわち24)の矢印を示したいとします。 plot1 p1(x1、y1)の与えられた座標からplot2 p2(x2、y2)の座標に矢印を描くことは可能ですか?

enter image description here

EDIT:ダミー画像プロットを示すサンプルスクリプトを追加します。今

library(plot3D) 

#we will create dummy images first 
img1 <- matrix(0, nrow = 100, ncol = 100) 
img2 <- matrix(0, nrow = 100, ncol = 100) 

#add an objects to img1 and img2 
img1[41:44, 31:35] <- rnorm(20) #object1 in image 1 
img2[44:47, 33:37] <- rnorm(20) #object1 in image 2 

img1[11:14, 71:75] <- rnorm(20) #object2 in image 1 
img2[14:17, 73:77] <- rnorm(20) #object2 in image 2 

# cordinates are x and y 
x <- 1:100 
y <- 1:100 

#now plot them 
par(mfrow=c(1,2)) 
image2D(img1, x, y) 
image2D(img2, x, y) 

、私は関連を示すために、画像2のオブジェクトにイメージ1中のオブジェクトから二本の矢をプロットしたいです。

+0

ます(http:// stackoverflowの.com/questions/5963269/how-to-make-a-great-r-reproducible-example)と、プロットを生成するために使用しているコードを入力します。 – MrFlick

+0

再現可能な例を提供してください.... –

+0

'lines'、segments'および' arrows'関数は、アドレス指定されたプロット領域にしか及ばないことがあります。あなたは真ん中の注釈ラベルを指す矢印を受け入れることができますか? –

答えて

1
あなたは異なるビューポート間に線を描くために、グリッドグラフィック限られた施設を使用することができ

library(grid) 
library(gridGraphics) 

par(mfrow=c(1,2), xaxs="i", yaxs="i") 
plot(1:10, 1:10, xlim=c(0,10), ylim=c(0,10)) 
plot(1:10, 1:10, xlim=c(0,10), ylim=c(0,10)) 

grid.echo() 
grid.ls(viewports = T, grobs = F, flatten = T, recursive = F) 
seekViewport("graphics-plot-1") 
grid.rect(gp=gpar(col="red", fill=NA)) 
grid.move.to(unit(8/10, "npc"), unit(8/10, "npc")) 
upViewport() 
seekViewport("graphics-plot-2") 
grid.rect(gp=gpar(col="red", fill=NA)) 
grid.line.to(unit(4/10, "npc"), unit(4/10, "npc"), gp=gpar(lty=2), arrow = arrow()) 

enter image description here

あなたが[再現可能な例]を提供する場合を助けるために容易になるだろう
+0

ありがとう@baptiste!私はあなたのソリューションがプロットのために働いているのを見ることができます。あなたは私のimage2Dプロットで簡単にそれを行うことができると思いますか? –

関連する問題