1. ホーム
  2. r

[解決済み】プロットをディスクにイメージとして保存するには?

2022-05-09 08:17:08

質問

Rを使って線形回帰をプロットしています。 その画像をPNGまたはJPEGで保存したいのですが、自動で行うことは可能でしょうか?(コードを介して)

2つの異なる質問があります。まず、私はすでにモニター上でプロットを見ていて、それをそのまま保存したいのです。第二に、私はまだプロットを生成していませんが、プロットコードを実行するときに直接ディスクに保存したいのです。

どのように解決するのですか?

密接に関連した2つの質問があり、それぞれに回答があります。


1. 私のスクリプトで将来画像が生成されますが、どのようにディスクに保存しますか?

プロットを保存するには、以下の作業が必要です。

  1. デバイスを開くには png() , bmp() , pdf() またはそれに類するもの
  2. モデルのプロット
  3. を使用してデバイスを閉じます。 dev.off()

プロットを保存するためのいくつかのサンプルコードは png ファイルを作成します。

fit <- lm(some ~ model)

png(filename="your/file/location/name.png")
plot(fit)
dev.off()

これは、グラフィカルなフォーマットに関する(複合)ヘルプページで説明されています。 ?png , ?bmp , ?jpeg?tiff のヘルプページと同様に ?pdf .

しかし、ディスク上の画像と、画面に直接プロットした同じ画像とでは、例えば画面上のウィンドウの大きさを変えた場合など、見え方が異なる場合があることに注意してください。


なお、プロットが lattice または ggplot2 の場合、プロットを明示的にプリントしなければなりません。 これをより詳しく説明したこの回答や、R FAQ へのリンクをご覧ください。 ggplotのqplotがソースで実行されない


2. 今、画面上でプロットを見ているのですが、それを「そのまま」ディスクにコピーしたいのですが。

dev.print(pdf, 'filename.pdf')

これで、インタラクティブウィンドウのサイズを変更しても、画像は完全にコピーされるはずです。この答えの最初の部分と同じように pdf のような他のファイルタイプに置き換えます。 png .