如何获取R图中选定点的坐标?

inf*_*ous -1 r

我需要将鼠标指针选择的点的坐标传递给 R 程序,以执行一些计算。我在让它工作时遇到问题。

我知道这段代码应该识别图上的点:

plot(kk2$k2,kk2$k1)
identify(kk2$k2,kk2$k1)
Run Code Online (Sandbox Code Playgroud)

但即使这样也行不通。在绘图上出现一些无意义的数字,而点有两个坐标。为什么?

如何至少解决这个问题?

我的目标是将点坐标返回给 R 并对它们执行一些计算。数据集 kk2 只有两列 - k1 和 k2,仅此而已。

Waj*_*jid 5

CRAN 上可用的包“gatepoints”将允许您绘制一个返回您感兴趣的点的门。

如果您使用 RStudio,最好先打开一个新的 x11 设备,在单独的 x11 窗口中绘图:

X11()
Run Code Online (Sandbox Code Playgroud)

现在绘制你的观点,我已经编造了一些简单的数据:

kk2 <- data.frame(k2=1:10, k1=1:10)
plot(kk2, col = "red", pch = 16)
Run Code Online (Sandbox Code Playgroud)

简单的情节

运行下面的命令,然后通过左键单击和右键单击来选择您的点以关闭多边形:

selectedPoints <- fhs(kk2)
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

这将返回:

selectedPoints
#> [1] "4" "5" "7"
#> attr(,"gate")
#>         k2       k1
#> 1 6.099191 8.274120
#> 2 8.129107 7.048649
#> 3 8.526881 5.859404
#> 4 5.700760 6.716428
#> 5 5.605314 5.953430
#> 6 6.866882 3.764390
#> 7 3.313575 3.344069
#> 8 2.417270 5.217868
Run Code Online (Sandbox Code Playgroud)