第7章 入出力と保存 ・ ノック 96 / 100 ・ [[000 - はじめに(使い方と目次)|目次]]<br>
← 前 [[095 - データを CSV に書き出す]] ・ 次 → [[097 - ggplot の図を保存する]]
> [!info] グラフをファイルに書き出す3点セット
> R でグラフを画像ファイルに保存するには、「デバイスを開く→描画する→デバイスを閉じる」という3ステップが必要です。
>
> - `png("ファイル名.png")` :PNG ファイルへの書き出しを開始します
> - `plot(...)` など:グラフを描画します
> - `dev.off()` :ファイルへの書き出しを終了します
>
> `dev.off()` を忘れるとファイルが正しく保存されません。保存できたかどうかは `file.exists("ファイル名.png")` で確認できます。保存先はワーキングディレクトリです。
## 問題
`iris` データの `Sepal.Length` と `Petal.Length` の散布図を `plot.png` として保存してください。保存後に `file.exists()` で確認しましょう。
> [!tip] ヒント
> `png()` → `plot()` → `dev.off()` の順番で書きます。
> [!success]- 回答を見る
> ```r
> setwd("/tmp")
> png("plot.png")
> plot(iris$Sepal.Length, iris$Petal.Length,
> xlab = "Sepal Length", ylab = "Petal Length")
> dev.off()
> file.exists("plot.png")
> ```
> ```
> null device
> 1
> [1] TRUE
> ```
> `dev.off()` を実行すると `null device 1` と表示されます。これはデバイスが正常に閉じられたことを示します。`TRUE` が返れば画像ファイルが作られています。