我开发了一个R应用程序,我想部署它。
目前,该应用程序包含一组要从命令行运行的函数,如R包。为了部署它,我正在考虑重新打包R Portable添加必要的库和我的代码。我的主要问题是选择一个合适的GUI工具包。
生产环境
我的应用是单用户应用(即桌面应用),目标平台是Windows。它可以在R中引导,然后调用工具包,或者用Java引导,然后调用R引擎。 GUI首先应该提供应用程序功能。它还应该获取函数图形输出。
可能的替代方案
这是一个潜在的替代品清单。我想知道他们是否符合/适合所描述的必要环境。
Java JRI现在仅作为rJava的一部分发布,但后者有明确记录,我无法找到前者的文档和教程。 至于Deducer,它是作为GUI前端呈现的,但我发现它也是GUI toolkit
TCL/Tk绑定似乎是R的自然选择,并且有很好的文档记录,但有人抱怨此工具包的局限性。 RGtk2似乎很有趣,还有一些教程。 gWidgets是运动包装小插图的罕见工具包之一!
尽管我不需要真正的Web应用程序,但有趣的选择是将R与JavaScript / HTML连接起来。作为我们大多数人,我熟悉这个环境,应用程序可以从许多JS库中受益。
问题是漂亮的Shiny server和rApache仅适用于Linux,这可能也是Concerto。相反Rserve在Windows上运行,虽然没有正式的JS客户端,但我找到了第三方rserve-js和node.js client。
由rApache的同一作者提出的Rook应该是平台无关的(不是吗?)。
R Server Pages可以有效,但我没有在插图或参考手册中找到有关HttpDaemon
和HttpRequest
函数的示例。
我用gWidgetsWWW运行了一些简单的例子。它可以工作,但它似乎生成了固定的网页,没有修改HTML代码的可能性。
修改
让我澄清一下我的问题。我不是在调查你的个人喜好。 这里提到的技术或产品往往很年轻而且不普遍。在投入数月的代码之后发现它们还没有准备好或者不适合生产,这将是非常不愉快的。所以我想知道(不是你的主观品味,但是)他们是否能够在上述环境中工作。
答案 0 :(得分:3)
我们在rApache和Ruby on Rails上创建了一种基于rapporter.net的其他技术构建的webapp构建 - 结果证明它是一个框架来托管基于R的统计应用程序。 Rapplications的方式,而不是我们最初的目标,即创建一个用户友好的在线前端R.我热烈建议查看我们的功能,因为你可以通过不处理服务器来节省大量的资源 - 方面,CMS和其他无聊的问题,但可以集中在统计工具上。
无论如何,除了宣传我们的东西之外,让我总结一下我的经历:
答案 1 :(得分:1)
我即将做类似的事情。最快的方式(就部署时间和未来的应用程序性能而言)似乎是c#
与R
到R.NET
的接口。在Visual Studio
中,您只需点击几下即可从令人难以置信的可视化选项中受益,并且设置交互式/向下钻取图表也非常简单。正如您所提到的,RServe
(带Java
)是另一个有价值的选择。
修改强>
如果不需要Web应用程序在公共IP地址上运行r包Rook
,这是一个有趣的选项。 Rook
的一些示例:using ggplot2,using googleVis