この記事では、Python で matplotlib(マットプロットリブ) を使ってグラフを描画する方法を解説します。
matplotlib
を使うことで簡単にデータを可視化させることができます。
それでは、簡単なサンプルを混えて使い方を見ていきましょう!
matplotlib
は標準ライブラリではないので pip
を使ってインストールしましょう!
ターミナルやコマンドプロンプト
pip install matplotlib
matplotlib
で簡単なグラフを描画してみて使い方を確認してきましょう!
import matplotlib.pyplot as plt
# x軸とy軸の値の指定
plt.plot([1, 2, 3, 4], [10, 20, 30, 40])
# 表示
plt.show()
上記コードを実行すると以下のような折れ線グラフが表示されます。
それでは、細かくコードを見ていきます。
インポート
まずは、matplotlib
の pyplot
モジュール を plt
という名前でインポートします。
import matplotlib.pyplot as plt
プロットの設定
plot()
にイテラブルを指定することで x軸 と y軸 の値を指定できる。
plt.plot([1, 2, 3, 4], [10, 20, 30, 40])
値を変えてみるとさらに理解が深まると思います。
グラフの描画
作成したグラフを画面に表示します。
plt.show()
これだけで先ほどの折れ線グラフを描画することができました。
折れ線グラフは plot()、棒グラフは bar()、ヒストグラムは hist()、散布図は scatter() で描画することができます。
グラフに様々な情報を追加して分かりやすくすることができます。
タイトルを描画するには tilte()
を使います。
plt.title('Graph')
タイトルやラベルに日本語を使うと文字化けしてしまいます。日本語を使いたい場合は以下の記事が参考になります。
LinkMacにおけるmatplotlibの日本語表示 | OpenBook
x軸 のラベルを xlabel()
、y軸 のラベルを ylable()
で配置できます。
# x軸 のラベル
plt.xlabel('X Label')
# y軸 のラベル
plt.ylabel('Y Label')
グリッド線を表示させるには grid()
に True を指定する。
plt.grid(True)
凡例は、それぞれの plot に label を指定し、plt.legend()
を呼び出すことで配置できる。
import matplotlib.pyplot as plt
# 青色の実線
plt.plot([1, 2, 3, 4], [10, 20, 30, 40], label='Blue')
# 赤色の破線
plt.plot([1, 2, 3, 4], [5, 15, 25, 35], linestyle='dashed', color='red', label='Red')
# 凡例の配置
plt.legend()
plt.show()
legend()
の引数に loc を指定することで凡例を配置する場所を設定できる。1で右上、2で左上、3で左下、4で右下、5で中央右、6で中央左 を指定できる。
作成したグラフを保存するには plt.figure()
から Figure
インスタンス を生成し、savefig()
メソッド を呼び出すことで保存できます。
import matplotlib.pyplot as plt
# Figureインスタンス の生成
fig = plt.figure()
plt.plot([1, 2, 3, 4], [10, 20, 30, 40])
# 「g.png」という名前で保存
fig.savefig("g.png")
実行すると同ディレクトリ内に「g.png」が生成されます。
ちなみに、jpeg、pdf、svg などの様々なフォーマットに対応しています。
この記事では、matplotlib を使ってグラフを描画する方法を解説しました。
グラフにすることでデータをわかりやすく可視化することができます。複数のグラフが用意されているのでデータによって使うグラフを合わせましょう!
matplotlibで折れ線グラフを描画する |
matplotlibで棒グラフを描画する |
matplotlibでヒストグラムを描画する |
matplotlibで散布図を描画する |
それでは今回の内容はここまでです。ではまたどこかで〜( ・∀・)ノ