使用 RInside/Rcpp 从 c 调用 R 绘图 | 珊瑚贝

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
R_INTERACTIVE_DEVICE = X11a

参考资料:
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/

微信公众号
手机浏览(小程序)

Warning: get_headers(): SSL operation failed with code 1. OpenSSL Error messages: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed in /mydata/web/wwwshanhubei/web/wp-content/themes/shanhuke/single.php on line 57

Warning: get_headers(): Failed to enable crypto in /mydata/web/wwwshanhubei/web/wp-content/themes/shanhuke/single.php on line 57

Warning: get_headers(https://static.shanhubei.com/qrcode/qrcode_viewid_8946.jpg): failed to open stream: operation failed in /mydata/web/wwwshanhubei/web/wp-content/themes/shanhuke/single.php on line 57
0
分享到:
没有账号? 忘记密码?