【发布时间】:2011-01-18 20:25:26
【问题描述】:
用户如何以交互方式更改二维图上的某个方面(例如,方向或线的长度)?
【问题讨论】:
标签: r user-interface plot
用户如何以交互方式更改二维图上的某个方面(例如,方向或线的长度)?
【问题讨论】:
标签: r user-interface plot
rpanel 包对我有用。
library(rpanel)
lvm.draw <- function(panel) {
x=0:20
plot(x, panel$int + (panel$slo*x), ylim=panel$data, ylab="y", main="Adam's Super Duper Interactive Graph", typ="l", lwd=3, col="red")
grid()
panel
}
ylimdat<-c(-50,50)
panel <- rp.control(title = "Adam's Panel", data=ylimdat, slo=0.5, int=1.0, size=c(300, 160))
rp.slider(panel, var=slo, from=-5, to=5, action=lvm.draw, title="Slope", pos=c(5, 5, 290, 70), showvalue=TRUE)
rp.slider(panel, var=int, from=-50, to=50, action=lvm.draw, title="Intercept", pos=c(5, 70, 290, 90), showvalue=TRUE)
【讨论】:
rpanel的例子:revgr.com/2012/12/11/interactive-graphs-using-r
TeachingDemos 包中的 tkexamp 函数可帮助您创建带有控件的图形,以更改绘图中的各种选项,帮助页面上有几个示例可以运行以查看其工作原理。
同一包中的 TkIdentify 函数允许您将标签(以及从点到标签的线)拖动到所需位置,您可以从该函数中的代码(全部为 R,未编译)作为基础您自己的动态图,允许拖动一条线。
【讨论】: