3

rApache を使用してブラウザで円グラフを生成しようとしています

私のRコードはこれです

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

これをブラウザで実行すると...このエラーが発生します

rApacheには伝えたいことがあります。ソースを表示し、最後にある HTML コメントを読んでください。

関数のエラー (ファイル = ifelse(onefile, "Rplots.pdf", "Rplot%03d.pdf"), : ファイル 'Rplots.pdf' を開けません

なぜこのエラーが発生するのですか?

4

1 に答える 1

3

pie() およびその他のプロット コマンドは、デフォルトで PDF に書き込もうとします。RApache を使用して Web ページに画像を表示する場合、この方法は望ましくありません。RApache に何をさせたいかを伝える必要があります。

RApache ソース コードを展開したときに作成されたtestディレクトリを調べます。そこでは、Web ページで 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

plot(rnorm(10))の行をpie(school.freq)に置き換えて、このファイルを適切な場所 (例: /var/www/R/plot.R ) に保存すると、グラフが Web 上に表示されます。ページ。

RApache のドキュメントを読み、Web ルート内の場所から R スクリプトを実行できるように構成してください。

于 2011-11-30T10:47:59.323 に答える