0

我正在寻找一种在 tcltk 窗口内创建绘图的方法,我希望该窗口首先读取一些文件,然后对数据执行一些功能,然后创建绘图(最好在允许保存的新窗口中)。

我是 tcltk 的新手,但我想使用它来让不熟悉代码的用户运行和使用脚本。我需要它来使用 ggplot2 主要是为了便于在地块内使用地图。

我尝试从以下链接调整示例以使用 ggplot2 绘图,但它没有显示任何内容。 http://www.sciviews.org/recipes/tcltk/TclTk-plotting/

我不需要图表受用户行为的影响,只受他选择的数据的影响。

我知道闪亮是轻松构建 GUI 的首选方法,但它有我试图避免的文件大小限制。

4

1 回答 1

1

问题中链接中代码的这种修改对我有用:

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)

截屏

于 2017-11-25T22:29:42.113 回答