matplotlib ライブラリ

【matplotlib】グラフを保存する方法【画像保存】

pythonのグラフ描画用ライブラリである「matplotlib」で作成したグラフを、画像として保存する方法について紹介します。

本記事では、下記の内容について紹介しています。

この記事で分かること

■matplotlibでグラフを保存する方法

①matplotlib.pyplot.savefig の使用方法

②グラフを画像保存するサンプルコード

スポンサーリンク

matplotlibでグラフを保存する方法【画像保存】

matplotlibで作成したグラフを画像として保存する方法について紹介します。

matplotlibには、グラフを保存するためのメソッドである matplotlib.pyplot.savefig が用意されています。

はじめに、matplotlib.pyplot.savefig について簡単に紹介したあとに、具体的なサンプルコードを紹介します。

savefigメソッドの使用方法

matplotlib.pyplot.savefig の基本的な使用方法について、簡単に紹介します。

引数の指定方法について、 公式ドキュメント から引用しました。

matplotlib.pyplot.savefigの記述方法

公式ドキュメント

基本的には、ファイルのパスを渡すだけで使用可能です。

保存可能なフォーマットは、以下のとおりです。

保存可能なフォーマット

  • eps
  • jpeg
  • jpg
  • pdf
  • png
  • ps
  • raw
  • rgba
  • svg
  • svgz
  • tif
  • tiff

スポンサーリンク

matplotlibで作成したグラフを保存するサンプルコード

matplotlibで作成したグラフを保存するサンプルコードを紹介します。

以下、サンプルコードです。

### matplotlibでグラフを保存
import numpy as np
import matplotlib.pyplot as plt
import pathlib


x1 = np.random.normal(0, 10, 1000)
x2 = np.random.normal(20, 20, 1000)


fig = plt.figure(figsize = (5,5), facecolor='lightblue')

plt.xlabel('X')
plt.ylabel('Y')

plt.hist(x1,  bins=30, range=(-50, 100), ec='black', alpha = 0.5, label='x1')
plt.hist(x2,  bins=30, range=(-50, 100), ec='black', alpha = 0.5, label='x2')

plt.legend()

plt.show()


path_dir = pathlib.Path(r'test')
path_img = path_dir.joinpath('img.png')

fig.savefig(path_img)

コード実行後、表示されるグラフはこちらになります。

実行結果

> x1 = np.random.normal(0, 10, 1000)
> x2 = np.random.normal(20, 20, 1000)

正規分布の乱数を1,000個ずつ生成しています

> fig = plt.figure(figsize = (5,5), facecolor='lightblue')

グラフを表示する領域を、figオブジェクトとして作成しています。
figsizeで領域の幅と高さを、facecolorで領域の色を指定しています。

> plt.xlabel('X')
> plt.ylabel('Y')

グラフのx軸ラベル、y軸ラベルを指定しています。

> plt.hist(x1, bins=30, range=(-50, 100), ec='black', alpha = 0.5, label='x1')
> plt.hist(x2, bins=30, range=(-50, 100), ec='black', alpha = 0.5, label='x2')

データを渡し、ヒストグラムを描画しています。
labelで凡例として表示する文字列を指定しています。

plt.legend( )

凡例を表示しています。

> path_dir = pathlib.Path(r'test')
> path_img = path_dir.joinpath('img.png')

pathlibモジュールを用いて、パスのオブジェクトを生成しています。
保存先のファイル名は、パスオブジェクトのjoinpathメソッドでパスを連結して作成しています。

pathlibモジュールの使い方については、下記の記事で詳しく紹介しています。

pathlibの使い方

fig.savefig(path_img)

> savefig関数を用いて、グラフを画像として保存します。引数には、保存先のファイルのパスを指定しています。

スポンサーリンク

-matplotlib, ライブラリ
-,