この記事では、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で散布図を描画する |
それでは今回の内容はここまでです。ではまたどこかで〜( ・∀・)ノ