非常に大きなベクトル(大きさ10 ^ 7)からプロットを作成しました。プロットをPDFファイルとして保存する通常の方法の問題は、PDFファイルが約10MBの非常に大きなファイルとして出力されることです。単純な時系列プロットにこのような大きなサイズは必要ありません。サイズが最大100キロバイトになるようにプロットを保存するにはどうすればよいですか?
baptisteは、ニースラスタータイププロットのpngの提案とともに正しい軌道に乗っています。オープンデバイスをコピーするというJdbabaの提案とは対照的に、png()
deviceを直接呼び出すことをお勧めします。これにより、最初に別のデバイスウィンドウにプロットをロードする必要がなくなり、データセットが大きい場合にロードに時間がかかるため、多くの時間を節約できます。
#plotting of 1e+06 points
x <- rnorm(1000000)
y <- rnorm(1000000)
png("myplot.png", width=4, height=4, units="in", res=300)
par(mar=c(4,4,1,1))
plot(x,y,col=rgb(0,0,0,0.03), pch=".", cex=2)
dev.off() #only 129kb in size
見る ?png
pngデバイスのその他の設定。
Pngファイルをプロットする場合は、次のコマンドを使用します。
dev.copy(png,"myfile.png",width=8,height=6,units="in",res=100)
dev.off()
高品質のグラフを出力する場合は、res
値をより高い値に変更できます。
ファイルをPDFとして保存する場合は、次のコマンドを使用します。
pdf("myfile.pdf",width=8,height=6)
dev.off()
必要に応じて、幅と高さの値を忘れずに変更してください。