PythonのMatplotlibで個々のサブプロットの高さを調整する方法
Matplotlibでサブプロットの高さを個別に調整する
PythonのMatplotlibでは、subplot()関数に行数・列数・インデックスを組み合わせて指定することで、各サブプロットの高さやレイアウトを柔軟に調整できます。以下の手順で実装してみましょう。
手順
- 図のサイズを設定し、サブプロット間および周囲の余白(パディング)を調整します。
- 現在の図に、nrows=7、ncols=2、index=1 のサブプロットを追加します。
- 現在の図に、nrows=2、ncols=2、index=3 のサブプロットを追加します。
- 現在の図に、nrows=1、ncols=3、index=3 のサブプロットを追加します。
- 図を表示するには、
show()メソッドを使用します。
コード例
import matplotlib.pyplot as plt plt.rcParams["figure.figsize"] = [7.50, 3.50] plt.rcParams["figure.autolayout"] = True plt.subplot(7, 2, 1) plt.subplot(2, 2, 3) plt.subplot(1, 3, 3) plt.show()
出力結果

コードの解説
このコードでは、まず plt.rcParams["figure.figsize"] を使って図全体のサイズを幅7.50×高さ3.50インチに設定しています。また、figure.autolayout を有効にすることで、ラベルやタイトルが重ならないよう余白が自動的に調整されます。
各 subplot() の呼び出しでは、第1引数に行数、第2引数に列数、第3引数に配置位置(インデックス)を渡しています。行数や列数が異なる複数のグリッド定義を組み合わせることで、高さの異なるサブプロットを1つの図の中に自由に配置できるのがポイントです。より高度なレイアウト制御が必要な場合は、GridSpec クラスの利用も検討するとよいでしょう。
-
PythonのMatplotlibでワッフルチャートを作成する方法を解説
ワッフルチャート(Waffle Chart)は、目標に対する進捗状況を視覚的に表現するのに適した、魅力的なデータ可視化手法です。四角いマスが並ぶ様子がワッフルに似ていることからこの名前が付けられており、構成比や達成率を直感的に伝えられます。Pythonでワッフルチャートを作成するには、pywaffleライブラリを使用します。新しい図を作成する際、または既存の図を有効化する際に、FigureClass=Waffleを指定することで簡単に描画できます。作成手順辞書を使ってPandasのデータフレームを作成します。plt.figure()で新しい図を作成する際に、FigureClass=Waffle
-
Python Matplotlib:サブプロットでX軸目盛り(xticks)を設定する方法
Matplotlibのsubplot機能を使うと、1つの図(figure)をnrows×ncolsのグリッド状に分割して複数のグラフを並べて表示できます。さらにplt.xticksを組み合わせることで、各サブプロットのX軸目盛りの位置を自由に制御することが可能です。 実装手順 1本目と2本目の折れ線用に、それぞれデータのリストを作成します。 現在の図にサブプロットを追加します(nrow=1、ncols=2、index=1)。 破線(dashed)スタイルで1本目の折れ線を描画します。 自動スケーリングのマージンを設定します(0.2)。 X軸目盛りを偶数の位置(2, 4, 6, 8, 10)に