Matplotlibで複数のサブプロットを効率的に作成・配置する方法

この記事では、PythonのMatplotlibライブラリを用いた複数のサブプロットの作成と配置について詳しく解説します。具体的なコード例とその解説、さらに応用例を2つ以上掲載しています。

目次

Matplotlibとは

Matplotlibは、Pythonでデータ可視化を行うためのライブラリです。2Dのグラフやプロットを生成することができ、多くのデータ分析者や研究者にとって必須のツールとなっています。

サブプロットとは

サブプロットとは、一つのプロットエリアに複数のグラフを表示するための仕組みです。例えば、温度と湿度の変動を同時に確認する場合など、関連する複数のデータを一つの画面で比較したいときに使います。

基本的なサブプロットの作成方法

まずは、基本的なサブプロットの作成方法について説明します。

必要なモジュールのインポート

以下のようにMatplotlibとNumPyをインポートします。

import matplotlib.pyplot as plt
import numpy as np

サブプロットの作成

以下のコードで、2×2のサブプロットを作成できます。

# 2x2のサブプロットを作成
fig, axs = plt.subplots(2, 2)

サブプロットへのデータのプロット

サブプロットにデータをプロットする際は、以下のようにします。

# サンプルデータ生成
x = np.linspace(0, 10, 100)

# 各サブプロットにデータをプロット
axs[0, 0].plot(x, np.sin(x))
axs[0, 1].plot(x, np.cos(x))
axs[1, 0].plot(x, np.tan(x))
axs[1, 1].plot(x, np.exp(x))

# グラフ表示
plt.show()

応用例

サブプロットのスタイリング

サブプロットごとにスタイリングを施すことも可能です。

# 2x2のサブプロットを作成
fig, axs = plt.subplots(2, 2)

# サブプロットごとにスタイリング
axs[0, 0].plot(x, np.sin(x))
axs[0, 0].set_title('Sine Curve')
axs[0, 1].plot(x, np.cos(x))
axs[0, 1].set_title('Cosine Curve')
axs[1, 0].plot(x, np.tan(x))
axs[1, 0].set_title('Tangent Curve')
axs[1, 1].plot(x, np.exp(x))
axs[1, 1].set_title('Exponential Curve')

# グラフ表示
plt.show()

サブプロットのサイズと配置の調整

以下のコードで、サブプロットのサイズと配置を調整できます。

# サブプロットのサイズと配置を調整
fig, axs = plt.subplots(2, 2, figsize=(10, 6), tight_layout=True)

まとめ

Matplotlibでの複数のサブプロットの作成と配置は非常に簡単で、データの可視化において非常に有用です。基本的な作成方法から、スタイリングやサイズと配置の調整までを解説しました。これを機に、より高度なデータ可視化を行ってみてはいかがでしょうか。

コメント

コメントする

目次