Как вывести более одного графика, используя R-Apache
Ниже приведен мой R-код для построения графика функции с помощью QuantMod, однако ограничением этого является то, что я могу вывести только один график. Есть ли способ, чтобы ваша функция выводила более одного графика? 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 ответ
Один из способов решить эту проблему - создать HTML-файл, содержащий все ваши графики в виде img, например:
<html><body>
<img src="firstgraph.r" /><br />
<img src="secondgraph.r" /><br />
…
</body></html>
тогда пусть firstgraph.r будет чем-то похожим на код, который вы опубликовали выше (то есть что-то, что выводит image/png, а secondgraph.r выводит другое изображение / png со вторым графиком и так далее.
Это создаст страницу, которая в свою очередь загрузит все ваши изображения (которые затем будут сгенерированы по запросу).
Другое (более типичное R-решение) было бы создать панельный граф со всеми вашими графами, объединенными в одно изображение (например, через par(mfrows=c(2,1)) для графа 2 на 1).