如何使用R-Apache输出多个图形

时间:2012-06-11 14:25:08

标签: image apache r rapache

下面是我使用quantmod绘制函数图形的R代码,但是这个限制是我只能输出一个图形。有没有办法让你的函数输出多个图表,比如设置内容到text/html并以某种方式使用它来渲染多个图表?你能告诉我怎么做吗?

tickergraph = function()
{
setContentType ("image/png")
temp <- tempfile ()
png (temp, type="cairo")
ticker <- toupper(POST$t);
getSymbols(ticker)
chartSeries(eval(parse(text=ticker)))
dev.off ()
sendBin (readBin (temp, 'raw', n=file.info(temp)$size))
unlink (temp)
}

if(!is.null(POST$t))
{
tickergraph()
print(POST)
}

print("Cannot Plot when some of the values are NULL")

1 个答案:

答案 0 :(得分:0)

解决此问题的一种方法是制作一个HTML文件,其中包含所有图形,例如:

<html><body>
<img src="firstgraph.r" /><br />
<img src="secondgraph.r" /><br />
…
</body></html>

然后让firstgraph.r类似于你上面发布的代码(即输出 image / png 和secondgraph.r输出另一个 image / png 的东西)第二张图等等。

这将呈现一个页面,该页面反过来加载所有图像(然后将根据请求生成)。

另一个(更典型的R解决方案)是创建一个镶板图,所有图表都加入到一个图像中(例如通过 par(mfrows = c(2,1))对于2乘1的图表。)