加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Perl Statistics :: R生成空白图(jpeg)

发布时间:2020-12-15 21:45:17 所属栏目:大数据 来源:网络整理
导读:我目前正在使用ActiveState Perl 5.14和R项目版本2.13.2.在Perl中我使用Statistics :: R版本0.08.根据ActiveState,更新版本的Statistics :: R(通过0.24)未能通过审查,因此无法通过PPM获得. 历史:我已成功使用Perl访问R一段时间来执行分析.现在我想生成分析
我目前正在使用ActiveState Perl 5.14和R项目版本2.13.2.在Perl中我使用Statistics :: R版本0.08.根据ActiveState,更新版本的Statistics :: R(通过0.24)未能通过审查,因此无法通过PPM获得.

历史:我已成功使用Perl访问R一段时间来执行分析.现在我想生成分析结果的JPEG图像,以便于可视化.

问题在于:我可以在R控制台中成功生成图像.但是,当我通过Perl运行相同的命令时,我只得到一个空白图像.我的控制台代码包括(当然简化):

x<-c(1,2,3,4,5)
  y<-c(5,1)
  jpeg("C:/temp.jpg")
  plot(x,y)
  dev.off()

我的Perl命令包括(也简化):

$R = Statistics::R->new();
   $R->start_sharedR
   $R->send("x<-c(1,5)");
   $R->send("y<-c(5,1)");
   $R->send('jpeg("C:/temp.jpg")');
   $R->send("plot(x,y)");
   $R->send("dev.off()");

有什么建议?我知道Perl还有其他可以使用的绘图选项.我已经删除了一些(GD Graph),因为X轴数据不被视为数字.如果可能的话,我宁愿把它保留在R中,因为我已经在那个包中进行分析了.谢谢!

解决方法

忘记统计:: R.只需使用系统调用.至少这是我做的!
my $path_to_r = "C:/Program Files/R/bin/Rscript.exe";

my $cmd = "x<-c(1,5);";
$cmd .= "y<-c(5,1);";
$cmd .= 'jpeg("C:/temp.jpg");';
$cmd .= "plot(x,y);";
$cmd .= "dev.off()";

system($path_to_r . " -e '" . $cmd . "'");

如果您的R脚本稍微增长或者从参数中获取输入,请将其写入文件和Rscript.exe此文件中.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读