Matplotlibは、Pythonでデータ可視化を行うための強力なライブラリです。このチートシートでは、基本的なプロットの作成からカスタマイズ、保存方法までをカテゴリごとにまとめました。実際のコード例とそのグラフ出力を交えつつ説明するので、ぜひ手を動かして使い方を身につけてください。
Matplotlib完全攻略チートシートをまとめた資料をLINEにて無料配信しています→Matplotlib完全攻略チートシート
1. Matplotlibのインポート
Matplotlibを使用するには、まずライブラリをインポートします。pyplotを用いることで、簡単にプロットを作成できます。
import matplotlib.pyplot as plt
Python2. 基本的なプロット
折れ線グラフを作成
x = [0, 1, 2, 3, 4]
y = [0, 1, 4, 9, 16]
plt.plot(x, y)
plt.show()
Python出力:折れ線グラフ.png
散布図を作成
x = [5, 7, 8, 7, 2, 17, 2, 9, 4, 11, 12, 9, 6]
y = [99, 86, 87, 88, 100, 86, 103, 87, 94, 78, 77, 85, 86]
plt.scatter(x, y)
plt.show()
Python出力:散布図.png
棒グラフを作成
x = ['A', 'B', 'C', 'D']
y = [10, 15, 7, 10]
plt.bar(x, y)
plt.show()
Python出力:棒グラフ.png
ヒストグラムを作成
data = [5, 7, 8, 7, 2, 17, 2, 9, 4, 11, 12, 9, 6]
plt.hist(data, bins=5)
plt.show()
Python出力:ヒストグラム.png
円グラフを作成
labels = ['A', 'B', 'C', 'D']
sizes = [15, 30, 45, 10]
plt.pie(sizes, labels=labels)
plt.show()
Python出力:円グラフ.png
3. ラベルとタイトルの設定
グラフタイトルの設定
plt.plot(x, y)
plt.title("Sample Plot")
plt.show()
Python出力:グラフに「Sample Plot」というタイトルが表示されます。
x軸とy軸のラベルを設定
plt.plot(x, y)
plt.xlabel("X-axis Label")
plt.ylabel("Y-axis Label")
plt.show()
Python出力: x軸に「X-axis Label」、y軸に「Y-axis Label」が表示されます。
4. 色とスタイルの設定
線の色とスタイルを変更
plt.plot(x, y, color='red', linestyle='--')
plt.show()
Python出力:赤い破線の折れ線グラフが表示されます。
点の色とサイズを変更(散布図)
plt.scatter(x, y, color='purple', s=50)
plt.show()
Python出力:紫色で大きめの点の散布図が表示されます。
棒グラフの色を変更
plt.bar(x, y, color='orange')
plt.show()
Python出力:オレンジ色の棒グラフが表示されます。
5. 複数のプロットとサブプロット
同じプロットに複数の線を追加
y2 = [0, 1, 2, 3, 4]
plt.plot(x, y, label='y = x^2')
plt.plot(x, y2, label='y = x')
plt.legend()
plt.show()
Python出力:2本の線が表示され、それぞれ「y = x^2」と「y = x」の凡例が追加されます。
サブプロットを作成
plt.subplot(1, 2, 1)
plt.plot(x, y)
plt.title("First Plot")
plt.subplot(1, 2, 2)
plt.plot(y, x)
plt.title("Second Plot")
plt.show()
Python出力:2つのグラフが並んで表示され、左側が「First Plot」、右側が「Second Plot」のタイトルを持ちます。
6. 凡例の追加
凡例を追加
plt.plot(x, y, label='y = x^2')
plt.plot(x, y2, label='y = x')
plt.legend()
plt.show()
Python出力:凡例が追加され、それぞれの線が「y = x^2」と「y = x」で示されます。
凡例の位置を指定
plt.plot(x, y, label='y = x^2')
plt.plot(x, y2, label='y = x')
plt.legend(loc='upper left')
plt.show()
Python出力:凡例がグラフの左上(upper left)に表示されます。
7. 軸の範囲と目盛りの設定
軸の範囲を設定
plt.plot(x, y)
plt.xlim(0, 5)
plt.ylim(0, 20)
plt.show()
Python出力:x軸が0から5、y軸が0から20に設定され、指定した範囲でプロットされます。
軸の目盛りをカスタマイズ
plt.plot(x, y)
plt.xticks([0, 1, 2, 3, 4])
plt.yticks([0, 5, 10, 15, 20])
plt.show()
Python出力:x軸に[0, 1, 2, 3, 4]、y軸に[0, 5, 10, 15, 20]の目盛りが表示されます。
対数スケールを使用
plt.plot(x, y)
plt.yscale('log')
plt.show()
Python出力:y軸が対数スケールで表示されます。
8. グラフの保存
グラフをファイルに保存
plt.plot(x, y)
plt.savefig("plot.png")
plt.show()
Python出力:プロットが「plot.png」というファイルとして保存されます。
ファイル形式と解像度を指定して保存
plt.plot(x, y)
plt.savefig("plot.pdf", dpi=300)
plt.show()
Python出力:高解像度(300dpi)のPDFファイル「plot.pdf」として保存されます。
保存時に透明背景を指定
plt.plot(x, y)
plt.savefig("plot_transparent.png", transparent=True)
plt.show()
Python出力:背景が透明なPNGファイル「plot_transparent.png」として保存されます。
おわりに
今回はMatplotlibで使える実際のコード例とそのグラフ出力を交えつつ説明しました。ぜひ実際に手を動かして使い方を身につけてください。
Matplotlib完全攻略チートシートをまとめた資料をLINEにて無料配信しています→Matplotlib完全攻略チートシート