R下的GUI方案
GUI方案
R自己是个统计计较平台,也不是用来做GUI的,所以其实都是在用R和其他语言或组件的接口来做这个工作。当初玩过的平台有三个:Tcl/Tk,GTK(借助Rgtk2,台甫鼎鼎的Rattle也是用的这个方案)和Qt。
Tcl/Tk,利用tcltk
这个是R自带的一个接口,安装的时候只要没决心去掉,就可以直接用的。最早发明它就是因为在R默认的几个package里,它好像和统计没任何关系,厥后发明,这玩意是用来写图形界面的。这里是个用tcltk写的计较器的小例子,运行结果如下,能看到图形一行一行地出来。
利益
Tk是一套在Unix-like,Mac,Windows下可移植的快速图形开拓东西ToolKit的缩写。它有多种语言界面,如
C,Perl,Python等。而个中个中常见也最利便短小的界面语言是Tcl。Tcl/Tk在有X
window的unix-like系统下根基是缺省设置,在windows下的wrapper也不外几百k。相对付其他图形界面开拓语言来说实在是短小精
悍。
缺点
Tcl语言是一种险些没有数据范例的语言!这是短小、可移植带来的价钱。它是一种险些只用list作数据范例的语言,结构十分精良,写起它的语法表明措施时很简朴。反过来,在写应用措施时面临巨大的节制和计较有点贫苦,可是仍然可以或许办理。
GTK,利用RGtk2
这个算相对成熟一些的方案了,究竟rattle这种精品也是基于RGtk2的。想看RGtk2的例子,其实各人直接看rattle就OK了,不外这里照旧贴一个最简朴的例子,结果如下。
利益
跨平台,并且开举事度也相对不高。GTK的界面我小我私家也以为挺不错了,这个虽然也算优势。
缺点
通过RGtk2挪用GTK接口的话,好像效率有待提高,较量巨大的项目标时候会有卡顿,虽然也大概是我这个06年的呆板太老了(穷呀……哪个土豪赞助我一下下……)。
Qt
最早看到Qt里挪用R,是Dirk的RInside里的一个例子。横竖Rccp也是他老人家写的,搞搞Qt也在情理之中呀!RInside的例子结果如下。
利益
这个方案就是用Qt接管做图参数,用R做图再传回给Qt。在GUI设计上,Qt根基是无所不能的,Rstudio就是用Qt写的呀!我最看好的也是
个方案。把R包进一个Qt做的应用里,用ggplot2做图,再自动生成个陈诉什么的,险些无敌了。并且这样可以直接宣布可执行文件哟。
缺点
当初玩的时候是在Linux下一切正常,在windows下好像一直有各类编译错误,不知道此刻办理了没。(假如办理了,请必然在下面留言,我回广州会思量请你用饭。)
现有的package
预计大都正凡人也没精神写这些对象,但还但愿有兄弟可以在这个方面有所打破,这究竟也是R在实际应用的一个选择。相关的package的话,方才已经提到三个了,RGtk2、rattle和RInside。
这里出格要提到两个package,playwith和latticist。两个package都由Felix Andrews开拓,也都是做R的交互式GUI用的,但上次更新已经是一年多之前,不知道是不是已经放弃维护了。
playwith通过GTK+,为搭建更认真的GUi措施提供了更多的组件,和RGtk2、tcltk两个package的职位雷同。留意下面例子左边东西栏和上边菜单栏,包罗局部放大、手动添加注释等等成果。
latticist是一个可视化东西,它将现有的R呼吁封装成各类按钮,以低落利用门槛。下图是latticist的一个例子。
最后
这次提到的这些对象都是以前想做的,今后不知道会不会再玩,先记下来省得忘了。
PS:思量卸掉ubuntu换CentOS了,Revolution的对象好像只能在红帽系上搞。