使用R中的locator()向绘图添加箭头

Eli*_*eth 3 graphics plot r

是否可以使用定位器添加箭头?我试了试但没有运气....

plot(1:3)
arrows(x0=locator(1), x1=locator(1),
       y0=locator(1), y1=locator(1), code=1)#single headed arrow
Run Code Online (Sandbox Code Playgroud)

Rei*_*son 6

如果你看看什么locator(1)回报,你会明白为什么这甚至不接近工作:

> locator(1)
$x
[1] 1.365533

$y
[1] 2.25695
Run Code Online (Sandbox Code Playgroud)

所以你将长度为2的列表传递给每个参数.我可能(虽然这不会再现,因此我不会在任何分析中真正做到这一点)通过以下方法:

> locs <- locator(2)
> locs
$x
[1] 1.265845 1.587567

$y
[1] 2.604642 2.267028
Run Code Online (Sandbox Code Playgroud)

使用保存在locs以下位置的数据添加箭头:

with(locs, arrows(x0=x[1], x1=x[2], y0=y[1], y1= y[2], code=1))
Run Code Online (Sandbox Code Playgroud)