Call R plots from c++ using RInside/ Rcpp
是否可以从 c 调用绘图函数?
目前,当我尝试这样做时,ubuntu 终端会冻结一段时间(可能是创建 3d 图然后旋转 360 度的持续时间)然后解冻,而不会弹出新窗口。
这是预期的行为还是我做错了什么?如何使用 rinside 和 rcpp 从 c 中运行绘图(R 图形)?
谢谢
-埃贡
是的,Rcpp 包中有一个工作示例。查看 examples/ 目录中的文件 functionCallback/newApiExample.r。
您可能需要尝试使用 sleep() 来”保留”绘图片刻,或者绘图到文件然后显示该文件。这一切都取决于,但你提供的细节很少。
- 我主要使用 np 包,并在 R 中使用 npplot 函数。当我尝试使用或不使用 sys.sleep(xx) 时,它会创建一个文件 “Rplots.pdf”,但它永远不会打开任何 pdf读者。
- 嵌入默认设置 interactive 标志为 FALSE。我想你必须改变它。或绘制到 png 文件并让小部件显示该文件。
处理交互会话的环境变量是R_INTERACTIVE_DEVICE。
我们需要在我们的主目录中创建一个名为 .Renviron 的文件,然后将以下代码添加到该文件中:
R_INTERACTIVE_DEVICE = X11 用于基于 Linux 的系统。
1
2 3 4 5 |
anisha@linux-y3pi:~> ls .Renviron
.Renviron anisha@linux-y3pi:~> cat .Renviron |
参考资料:
1. http://stat.ethz.ch/R-manual/R-patched/library/base/html/Startup.html
2. http://stat.ethz.ch/R-manual/R-patched/library/base/html/options.html
- @DirkEddelbuettel 默认情况下它对我不起作用,这就是为什么我花了一个小时来搜索这个答案。!
- 我会敦促解决问题的原因,而不是症状。
来源:https://www.codenong.com/5142762/