2009-01-13

R で Tcl/Tk パッケージを試す


R で Tcl/Tk パッケージを使ってみました。以前から試してみたかったのですが、(自前の R スクリプトを使った)目の前の作業に追われて、ゆっくりと GUI を検討する暇がありませんでした。

で、今更なんですが R: Tk widgets で説明されている例を Fedora 上で実行してみてびっくり。簡単に Tk ウィジェットが R で利用できます。Ttk ウィジェットなど、最新の Tcl/Tk のウィジェットにも対応しているようです。これだったら、業務用に作った R スクリプトを GUI 化するために時間を割くことを検討する余地が十分ありそう。GUI 化できれば、作業を他の人に移管できる…。

$ R

R version 2.8.1 (2008-12-22)
Copyright (C) 2008 The R Foundation for Statistical Computing
ISBN 3-900051-07-0

Rはフリーソフトウェアであり、「完全に無保証」です。
...
(省略)
...
[以前にセーブされたワークスペースを復帰します]

> library(tcltk)
Tcl/Tkインターフェースのロード 終了済
> ls("package:tcltk")
[1] "addTclPath" "as.tclObj" "getTkProgressBar"
[4] "is.tclObj" "is.tkwin" "setTkProgressBar"
[7] "tcl" "tclArray" "tclObj"
[10] "tclObj<-" "tclObj<-.tclVar" "tclRequire"
...
(省略)
...
[241] "ttkbutton" "ttkcheckbutton" "ttkcombobox"
[244] "ttkentry" "ttkframe" "ttkimage"
[247] "ttklabel" "ttklabelframe" "ttkmenubutton"
[250] "ttknotebook" "ttkpanedwindow" "ttkprogressbar"
[253] "ttkradiobutton" "ttkscrollbar" "ttkseparator"
[256] "ttksizegrip" "ttktreeview"
> tt <- tktoplevel()
> label.widget <- tklabel(tt, text="Hello, World!")
> button.widget <- tkbutton(tt, text="Push",
+ command=function()cat("OW!\n"))
> tkpack(label.widget, button.widget)
<Tcl>
>


 

0 件のコメント: