下面的代码用于绘制二维图。
plot(1, type="n", xlab="", ylab="", xlim=c(-1, 1), ylim=c(-1, 1))
for (i in 1:100) {
x<-cos(i)
y<-sin(i)
points(x,y)
}
我要实现的是,当我单击绘图上的一个点时,它可以告诉我x, y, i
的值。请注意,我必须继续使用for
循环将点添加到图中,所以不要删除for
循环。
我该如何解决?谢谢。
答案 0 :(得分:2)
如果只需要单击该图并从给定元素中获取信息,则identify()
就足够了。
plot(1, type="n", xlab="", ylab="", xlim=c(-1.1, 1.1), ylim=c(-1.1, 1.1))
i <- 1:50
x <- cos(i/50*pi*2)
y <- sin(i/50*pi*2)
points(x, y, cex=0.8, pch=16, col="hotpink")
id <- identify(x, y, n=4, cex=0.8,
labels=paste(round(x, 2), round(y, 2), i, sep=", "))
按esc或右键单击绘图窗口以停止。