2

Rデバイス (postscript が最適) に出力をファイルではなく変数に書き込む方法はありますか?

たとえば、私はこれを知っています:

postscript(file="|cat")
plot(1:10)
dev.off()

あとがきテキストを に送信しますSTDOUT。そのテキストを 内の変数に入れるにはどうすればよいRですか?

4

4 に答える 4

3

プロットの Binary を R 変数に文字列として取得することに成功しました。読み取り/書き込みのオーバーヘッドがあります。以下のスニペットでは、R はプロットを一時ファイルとして保存し、再度読み込みます。

## create a plot
x <- rnorm(100,0,1)
hist(x, col="light blue")

## save plot as temp file
png(filename="temp.png", width=500, height=500)
print(p)
dev.off()

## read temp file as a binary string
plot_binary <- paste(readBin("temp.png", what="raw", n=1e6), collapse="")

多分これはあなたに役立つでしょう。

于 2010-08-17T12:48:31.670 に答える
1

postscript はコマンド引数を取るため、postscript(file="",command="|cat")

于 2009-10-23T16:32:45.527 に答える
1

なぜあなたはそれをしたいのですか?R は、Postscript ファイルを操作するのにあまり適したシステムではありません。他に何もなければ、 tempfile() を使用して画像をファイルに書き込み、標準のファイル関数を使用して読み取ることができます。派手にしたい場合は、おそらく fifo() パイプを使用できますが、それがはるかに高速になるとは思えません。しかし、私はあなたが別のアプローチをした方が良いと思います.

于 2009-10-23T17:03:27.153 に答える
0

次のように textConnection を使用できるはずです。

tc <- textConnection("string", "w")

postscript(tc)
plot(1:10)
dev.off()

しかし、string空白のままです - おそらくバグですか?

于 2009-10-23T20:49:41.643 に答える