在tcltk窗口中绘制ggplot2和ggmap
问题描述:
我正在寻找一种方法来在tcltk窗口内创建绘图, 我希望窗口先读取一些文件,然后对数据执行一些功能,然后创建绘图(最好在允许保存的新窗口)。在tcltk窗口中绘制ggplot2和ggmap
我是tcltk的新手,但我想使用它以便脚本能够被不熟悉代码的用户运行和使用。 我需要它使用ggplot2主要是为了方便在地块内使用地图。
我试着从下面的链接调整示例使用ggplot2情节,但它什么也没有显示。 http://www.sciviews.org/recipes/tcltk/TclTk-plotting/
我不需要图表受用户操作的影响,只需要他选择的数据。
我知道闪亮是简单的GUI构建的首选方法,但它具有我试图避免的文件大小限制。
答
在问题的链接代码的这种修改工作对我来说:
library(ggplot2)
library(tcltk2)
library(tkrplot)
hscale <- 1.5 # Horizontal scaling
vscale <- 1.5 # Vertical scaling
plotTk <- function() {
x <- -100:100
y <- x^2
p <- ggplot(data.frame(x, y), aes(x, y)) + geom_point()
plot(p)
}
win1 <- tktoplevel()
tktitle(win1) <- "A parabola"
win1$env$plot <- tkrplot(win1, fun = plotTk,
hscale = hscale, vscale = vscale)
tkgrid(win1$env$plot)