[Matplotlib] 画像をファイルに出力して保存する方法

[Matplotlib] 画像をファイルに出力して保存する方法

savefig()関数

 savefig()関数を使うと、Matplotlib で作成した図をファイルに出力することができます。第 1 引数には保存先のファイル名を指定します。ファイル名には .png, .jpeg, .svg などの拡張子を添えて保存形式を決めます。パスを指定しなければ、ファイルはカレントディレクトリに保存されます。
 他にも dpi(解像度)や facecolor(塗り潰しの色)、edgecolor(枠線の色) などを指定することができます。tight_layout に True を渡すと余白を最小限にして出力します。

# 3次関数のグラフ (cubic.pngに保存)

# 必要なモジュールをインポート
import numpy as np
import matplotlib.pyplot as plt

# Figureを設定
fig = plt.figure(figsize = (6, 6))

# Axesを追加
ax = fig.add_subplot(111)

# Axes(サブプロット)のタイトルを設定
ax.set_title("Cubic Function", size = 16)

# x軸の範囲を設定
ax.set_xlim(-2, 10)
ax.set_ylim(-100, 75)

# xのデータを作成
x = np.arange(-2, 10, 0.1)

# yのデータを作成
f = x**3 - 9*x**2 + 4*x + 1

# 軸ラベルの設定
ax.set_xlabel("x", size = 14)
ax.set_ylabel("y", size = 14)

# 目盛線(グリッド)の表示
ax.grid()

# データをプロット
ax.plot(x, f, color = "darkblue")

# 保存先のファイル名(PNG形式)
fname = "cubic.png"

# ファイルを保存
plt.savefig(fname, dpi = 64,
            facecolor = "lightgray", tight_layout = True)

 
 実行結果として表示される図は次のようになります。

 Python savefig()による画像ファイルの出力と保存

 ファイルに出力されるグラフは次のようになります。

 Python savefig()による画像ファイルの出力と保存②