【问题标题】:Using R in Processing through rJava/JRI?通过 rJava/JRI 在处理中使用 R?
【发布时间】:2010-02-28 02:28:02
【问题描述】:

是否可以通过 rJava/JRI 在 Processing 中运行 R?如果我在网络上部署了一个处理应用程序,客户是否需要在他们的系统上安装 R?

我正在寻找可以在网络上部署的交互式信息仪表板。看来,Processing 可能是我对事物的交互/网络部分的最佳选择。不幸的是,看起来并没有很多内置的数学/统计函数。而且也没有任何用于绘制数据的库。

我已经使用 R 和 gpplot2 几个月了,我对它操作和绘制数据的轻松程度感到兴奋(惊讶)。

所以我现在想知道是否可以两全其美并通过处理小程序运行 R。

来自JRI 网站:

JRI 是一个 Java/R 接口,它允许在 Java 中运行 R 应用程序作为单线程。 基本上它加载 R 动态库 进入Java并为R提供Java API 功能。它支持简单的 调用 R 函数和完整的 运行 REPL。

在某种意义上,JRI 是 rJava 的逆 两者都可以结合(即你可以 在 JRI 中运行回调的 R 代码 通过 rJava 到 JVM)。 JGR 项目 充分利用 JRI 和 rJava 提供完整的 Java GUI R.

JRI 使用本机代码,但它支持 Sun 的 Java(或 兼容)是可用的,包括 Windows、Mac OS X、Sun 和 Linux(两者 32 位和 64 位)。

感谢您的建议:)

【问题讨论】:

    标签: java r processing


    【解决方案1】:

    您可以在 Processing 中编写 Java 代码(或访问 Jar 文件)吗?如果是这样,那么你绝对可以做到这一点。 JRI 为 R 提供了一个低级接口,我还没有遇到 R 中无法通过其函数运行的东西。

    有关如何使用它的简单示例,请参阅this related question

    除了看几次外,我并没有真正使用过Processing,但我的理解是它有自己的语言。

    【讨论】:

    • 它有自己的语法,但它是 Java,在引擎盖下。它编译并在 JVM 上运行,在 JAR 中打包等。它的优势是为许多图形操作提供便利功能,因此您不必直接处理 Swing 或任何其他 Java2D 或 Java3D prims。
    【解决方案2】:

    我去年按照这些思路编写了一些示例代码:

    http://illposed.net/R4P.html

    最好的,

    布莱恩

    【讨论】:

      【解决方案3】:

      另一个选择是使用 Clojure 的 Incanter 库。它是 Clojure 中的一个类似 R 的库,由于(纯 java)Parallel Colt 数字库而速度非常快,内置 JFreeChart 支持快速绘制图表,以及通过 Clojure 使用处理的包装器。

      您可以将生成的应用程序作为普通(尽管可能相当大)Java Applet 推送到网络。

      【讨论】:

        猜你喜欢
        • 2013-05-30
        • 2015-11-29
        • 2011-11-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-01-17
        • 2012-05-07
        • 1970-01-01
        相关资源
        最近更新 更多