はじめに
データサイエンスの世界では、データの可視化は分析結果を伝えるうえで欠かせないスキルです。
その中でも、Pythonの可視化ライブラリ「Matplotlib」は、柔軟性と表現力の高さから多くのデータサイエンティストに愛用されています。
Matplotlibとは?
Matplotlibは、Pythonでグラフや図を描画するためのライブラリです。以下のような特徴があります:
- 折れ線グラフ、棒グラフ、散布図、ヒートマップなど多彩なグラフが描ける
- 細かいレイアウト調整が可能
- 他のライブラリ(Pandas、NumPy、Seabornなど)と連携しやすい
基本的なグラフ
折れ線グラフ
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [10, 20, 25, 30, 40]
plt.plot(x, y)
plt.title("line chart")
plt.xlabel("X")
plt.ylabel("Y")
plt.grid(True)
plt.show()
このコードで、シンプルな折れ線グラフが描けます。plt.plot()でグラフの描画し、plt.show()で表示します。

棒グラフ
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [30, 25, 10, 40, 20]
plt.plot(x, y)
plt.title("bar chart")
plt.xlabel("X")
plt.ylabel("Y")
plt.grid(True)
plt.show()

円グラフ
import matplotlib.pyplot as plt
x = [A, B, C, D, E]
y = [40, 20, 30, 10, 25]
plt.pie(y, labels=x)
plt.title("bar chart")
plt.show()

データサイエンスでの活用例
1. データの傾向を視覚化する
さまざまな情報を上記のようなグラフで表すことで、データの推移やカテゴリ別のランキング、構成比などをひと目で把握することができます。
2. 分布の確認
ヒストグラムや散布図を使うことで、データの分布や相関関係を視覚的に理解できます。
ヒストグラム
import numpy as np
data = np.random.randn(1000)
plt.style.use('seaborn-v0_8')
plt.figure(figsize=(8, 5))
plt.hist(data, bins=30, color='skyblue', edgecolor='black')
plt.title("Histogram of Normally Distributed Data")
plt.xlabel("Value")
plt.ylabel("Frequency")
plt.grid(True)

散布図
import numpy as np
x = np.random.randn(50)
y = np.random.randn(50)
plt.style.use('seaborn-v0_8')
plt.figure(figsize=(8, 5))
plt.scatter(x, y, color='dodgerblue', edgecolor='black', alpha=0.7)
plt.title("Scatter Plot of Random Data")
plt.xlabel("X values")
plt.ylabel("Y values")
plt.grid(True)

3. モデルの評価
機械学習モデルの予測結果と実測値を比較する際にもMatplotlibは有効で、残差プロットやROC曲線なども描くことができます。
カスタマイズで見やすく
今回は簡単な例を紹介しましたが、Matplotlibでは、線の色や太さ、フォント、凡例などを細かく調整したり、複数のグラフを組み合わせることも可能です。
他ライブラリとの連携
- Pandas:
df.plot()でMatplotlibを内部的に利用 - Seaborn:Matplotlibをベースにした高機能な可視化ライブラリ
- Plotly:インタラクティブなグラフを作成したい場合におすすめ
まとめ
Matplotlibは、データサイエンスにおける「可視化」の強力な武器です。
より説得力のある分析結果をつくるため、最初はシンプルなグラフから始めて、徐々にカスタマイズや応用に挑戦してみましょう!


