まくまくRノート
画像ファイル (1) 出力先を画像ファイルに切り替える
2014-12-09

R では「作図デバイス」を切り替えることによって、plot()hist() による描画内容を画像ファイルに出力することができます。現在の環境でどのような形式をサポートしているかは下記のように確認できます。

help("Devices")

PNG ファイルへの出力

たとえば、png ファイルにプロットするには下記のように png() 関数を使用して作図デバイスを切り替えます。 描画が終わったら、dev.off() で作図デバイスを閉じます(閉じないとファイルが使用中のままになってしまい、別のアプリケーションから開くことができません)。

png("output.png", width=400, height=300)  # 作図デバイス(png)を開く
plot(x, y)   # 描画
dev.off()    # 作図デバイス(png)を閉じる

SVG ファイルへの出力

svg() 関数を使用すれば、グラフの出力先を SVG ファイルに変更することができます。 svg() 関数の widthheight パラメータの単位は、デフォルトでインチとなっていることに注意してください(png() 関数の場合はピクセル数でした)。

svg("output.svg", width=4, height=3)  # 作図デバイス(svg)を開く
plot(x, y)   # 描画
dev.off()    # 作図デバイス(svg)を閉じる

こちらの場合も、実際の SVG ファイルは、dev.off() してからアクセスできるようになります。

ファイルの出力先ディレクトリ

ファイルがどのディレクトリに出力されるかは、getwd() で確認できます。

> getwd()
[1] "C:/Users/maku/Documents"

このワーキングディレクトリは setwd() により変更可能です。

> setwd("C:/your/dir")    # スラッシュを使う場合
> setwd("C:\\your\\dir")  # バックスラッシュを使う場合

この setwd() は柔軟にできており、次のようにして 1 つ上のディレクトリに移動することもできます。

> setwd("../")
2014-12-09