ロケーターを使用して矢印を追加することは可能ですか?試してみましたが、運がありませんでした。
plot(1:3)
arrows(x0=locator(1), x1=locator(1),
y0=locator(1), y1=locator(1), code=1)#single headed arrow
何locator(1)
が返ってくるかを見ると、なぜこれがうまく機能していないのかがわかります。
> locator(1)
$x
[1] 1.365533
$y
[1] 2.25695
したがって、長さ2のリストを各引数に渡していました。私はおそらく(これは再現可能ではないので、どの分析でも実際に怒りでそれを行うことはありませんが)これを介してこれにアプローチします:
> locs <- locator(2)
> locs
$x
[1] 1.265845 1.587567
$y
[1] 2.604642 2.267028
に保存されたデータを使用して矢印を追加しますlocs
。
with(locs, arrows(x0=x[1], x1=x[2], y0=y[1], y1= y[2], code=1))
この場合、私は個人的にロケーターを使用しないことを好みます。非常に迅速に作成された代替案は、次のようになります。注意すべき点は、「arrow_pos」の考案方法はいつでも変更できるということです。
arrow_pos = as.data.frame(matrix(1:2,2,2))
colnames(arrow_pos)<- c("x","y")
with(arrow_pos, arrows(x0=x[1],x1=x[2], y0=y[1],y1=y[2]))
または、次のようなこともできます。
x_s<-c(1,2)
y_s<-c(1,2)
arrow_pos <- as.data.frame(rbind(x_s,y_s))
この場合、プロットしているベクトルから直接データを取得するコマンドでx_sを埋めることもできます。
V1 = 1:3
例として、これらを「arrow_pos」に保存します
length(V1); ceiling(mean(V1)); median(V1)