无法使用rapache打开文件'Rplots.pdf'

时间:2011-11-30 08:01:17

标签: r rapache

我正在尝试使用rApache

在浏览器上生成饼图

我的R代码就是这个

library(MASS)                  
school = painters$School  
school.freq = table(school)
pie(school.freq)

当我在浏览器上运行时...我收到此错误

  

rApache 有话要说。查看源代码并阅读   最后的HTML注释。

函数错误(file =   ifelse(onefile,“Rplots.pdf”,“Rplot%03d.pdf”),:无法打开文件   'Rplots.pdf'

我知道为什么会收到此错误?

1 个答案:

答案 0 :(得分:3)

pie()和其他绘图命令将默认尝试写入PDF。如果要使用RApache在网页中显示图像,则此方法不是您想要的。你必须告诉RApache你想要它做什么。

查看解压缩RApache源代码时创建的 test 目录。在那里,您将找到几个脚本,说明如何在网页上呈现PNG图像。例如,在sendBin.R中,您将找到以下代码:

setContentType("image/png")
t <- tempfile()
png(t,type="cairo")
plot(rnorm(10))
dev.off()
sendBin(readBin(t,'raw',n=file.info(t)$size))
unlink(t)
DONE

如果用 pie(school.freq)替换 plot(rnorm(10))行,则将此文件保存在正确的位置(例如/var/www/R/plot.R ),您的图表应出现在网页上。

请务必阅读RApache文档并对其进行配置,以便可以从Web根目录中的位置运行R脚本。