我目前正在构建一个 Shiny 应用程序。我正在使用 rgl 包中的 plot3d 函数。我在 EC2(操作系统:Ubuntu 14.04,R 版本:3.2.0)上运行时遇到了一系列问题
1) 我分别在 ui.R 和 server.R 中使用了 plotOutput - renderPlot 组合。我在 EC2 上运行时收到错误消息:Error: rgl.open() failed
2) 我从 shinyRGL 包更改为 webGLOutput - renderWebGL 组合,但它在我的本地机器上显示“您必须启用 Javascript 才能正确查看此页面”。我没有在 EC2 上部署它
3) 在恢复到旧版本的 rgl 后,我尝试了第 1 步和第 2 步。接下来,在从 R-Forge 更新到更新版本的 rgl 后,我尝试了步骤 1 和 2。弹出相同的一组错误
4) 我在 server.R 中使用 options(rgl.useNULL=TRUE)
尝试了步骤 1、2 和 3,但不使用它。设置为TRUE时没有报错,但是也没有输出
有人可以建议一种让 plot3d 在 EC2 上工作的方法吗?
最佳答案
rgl 和 shinyRGL 的当前版本不兼容,请参阅此线程: https://groups.google.com/forum/#!topic/shiny-discuss/GJQ6tJNU7jU
线程中还发布了一个临时修复程序。
通过 devtools 从他的 github 安装一个可用的 RGL 版本克隆:
library(devtools)
install_github("rgl", "trestletech", "js-class")
(确保您在新的 R session 中执行此操作,并且 rgl 已卸载或更好,已从您的库中删除)
关于r - EC2 上 Shiny 的应用程序 - 错误 : rgl. open() 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31117821/