tcltk を使用するという考えに特に執着していますか? 私はgWidgets
パッケージを使用して同様の作業を行っており、いくつかの成功を収めています。その CRAN サイトによると、「gWidgets は、対話型 GUI を構築するためのツールキットに依存しない API を提供します」。このパッケージは tcltk または GTK2 を使用しており、私は GTK2 部分を使用しています。を変更するためのスピンボタンを備えた GUI の簡単な例を次に示しi
ます。また、時系列をプロットすると述べたので、関数に少し空想を加えたので、x 軸を時間にしました。
data<-data.frame(rnorm(11),rnorm(11),rnorm(11))
i = 1
fplot <- function(i, data = data){
library(ggplot2)
TimeStart <- as.Date('1/1/2012', format = '%m/%d/%Y')
plotdat <- data.frame(Value = data[ ,i], Time = seq(TimeStart,TimeStart + nrow(data) - 1, by = 1))
myplot <- ggplot(plotdat, aes(x = Time, y = Value))+
geom_line()
print(myplot)
}
library(gWidgets)
options(guiToolkit = 'RGtk2')
window <- gwindow ("Time Series Plots", visible = T)
notebook <- gnotebook (cont = window)
group1 <- ggroup(cont = notebook, label = "Choose i", horizontal=F)
ichooser <- gspinbutton(cont = group1, from = 1, to = ncol(data), by = 1, value = i, handler = function(h,...){
i <<- svalue(h$obj)})
plotbutton <- gbutton('Plot', cont = group1, handler=function(h,...){
fplot(i, data)})
graphicspane1 <- ggraphics(cont = group1)