R:从用户绘制的点生成坐标数据?

时间:2012-02-24 00:23:00

标签: r plot draw vector-graphics

我想手动将点添加到绘图中(通过鼠标点击),然后从这些点生成坐标数据。

是否有一个包或一组函数可以让我在R中执行此操作?

1 个答案:

答案 0 :(得分:6)

您可以使用基本功能locator()执行此操作。请尝试以下操作,例如:

plot(1:4)
df <- data.frame(locator())
## Now, on the plotting device:
## 
##     (1) "Left-click" on each of the four points
##     (2) "Right-click --> Stop" to return to the command-line

## The object that is returned, and assigned to df will look
## something like the following
df
         x        y
1 1.008072 1.032795
2 2.011049 2.002365
3 3.004381 2.995299
4 3.997714 4.011595

locator()通常非常有用,当你需要精确地将某些东西 - 文本或图例 - 放在一个绘图中,其中绘图的坐标系不容易从轴上读出。例如,尝试此操作,在返回命令行之前单击一次:

barplot(VADeaths)
text(locator(1), "I clicked here", col="red")