サブプロットのラベル付け#

サブプロットのラベル付けは比較的簡単で、さまざまであるため、Matplotlib にはこれを行うための一般的な方法がありません。

最も簡単なのは、軸の内側にラベルを配置することです。ここでは を使用pyplot.subplot_mosaicし、サブプロット ラベルをサブプロットのキーとして使用していることに注意してください。これは便利です。ただし、pyplot.subplotsサブプロットにラベルを付けたいものとは異なるキーでも同じ方法が機能します。

import matplotlib.pyplot as plt
import matplotlib.transforms as mtransforms

fig, axs = plt.subplot_mosaic([['a)', 'c)'], ['b)', 'c)'], ['d)', 'd)']],
                              constrained_layout=True)

for label, ax in axs.items():
    # label physical distance in and down:
    trans = mtransforms.ScaledTranslation(10/72, -5/72, fig.dpi_scale_trans)
    ax.text(0.0, 1.0, label, transform=ax.transAxes + trans,
            fontsize='medium', verticalalignment='top', fontfamily='serif',
            bbox=dict(facecolor='0.7', edgecolor='none', pad=3.0))

plt.show()
サブプロットにラベルを付ける

軸の外側のラベルを好むかもしれませんが、それでも互いに整列しています。その場合、わずかに異なる変換を使用します。

fig, axs = plt.subplot_mosaic([['a)', 'c)'], ['b)', 'c)'], ['d)', 'd)']],
                              constrained_layout=True)

for label, ax in axs.items():
    # label physical distance to the left and up:
    trans = mtransforms.ScaledTranslation(-20/72, 7/72, fig.dpi_scale_trans)
    ax.text(0.0, 1.0, label, transform=ax.transAxes + trans,
            fontsize='medium', va='bottom', fontfamily='serif')

plt.show()
サブプロットにラベルを付ける

タイトルと揃えたい場合は、タイトルに組み込むか、locキーワード引数を使用します。

fig, axs = plt.subplot_mosaic([['a)', 'c)'], ['b)', 'c)'], ['d)', 'd)']],
                              constrained_layout=True)

for label, ax in axs.items():
    ax.set_title('Normal Title', fontstyle='italic')
    ax.set_title(label, fontfamily='serif', loc='left', fontsize='medium')

plt.show()
a)、通常のタイトル、c)、通常のタイトル、b)、通常のタイトル、d)、通常のタイトル

参考文献

この例では、次の関数、メソッド、クラス、およびモジュールの使用が示されています。

スクリプトの合計実行時間: ( 0 分 1.840 秒)

Sphinx-Gallery によって生成されたギャラリー