キャンバスしたい(matplotlib.pyplot.figure

1import matplotlib.pyplot as plt
2
3fig = plt.figure()
4ax2 = fig.add_subplot(2, 3, 1)    # index=2
5ax4 = fig.add_subplot(nrows=2, ncols=3, index=4)
6ax6 = fig.add_subplot(pos=236)    # index=6

plot.figureFigureオブジェクトを作成し、 plot.add_subplotで分割キャンバス(Axesオブジェクト)を追加します。

位置引数に(行の数, 列の数, 場所)tupleを指定したり、それをまとめてposで指定したりできます。

参考

個人的にはfigureよりsubplotsを使う方法がオススメです。 figureのオプションはsubplotsでも使えます。

サイズを変更したい(figsize

1fig = plt.figure(figsize=(4, 3))

figsizeでキャンバス全体のサイズを変更できます。 単位はインチです。 デフォルトはfigsize=[6.4, 4,8]です。

注釈

単位はインチですが、実際の大きさは気にせず、 アスペクト比を指定するくらいの気持ちで使っています。

解像度が不足している場合は、dpiオプションで変更すればよいと思います。 デフォルトはdpi=100です。

レイアウトしたい(layout

1fig = plt.figure(layout="constrained")
2fig = plt.figure(layout="compressed")
3fig = plt.figure(layout="tight")
4fig = plt.figure(layout="none")

layoutオプションで、キャンバス内のレイアウトをよしなに設定できます。 デフォルトはlayout=Noneです。

ひとつのキャンバスに複数の図を描くと、タイトルや軸タイトルが重なってしまうことがあります。 そのようなときはlayout="constrained"オプションをつけるとよいです。 余白の大きさをもっと詰めたい場合は、好みに応じてcompressedtightを選択してください。

リファレンス