HOWTO · Matplotlib
Matplotlib で図のサイズを変更する方法
このチュートリアルでは、Matplotlib で Figure サイズを変更する方法を紹介します
このページの内容
Matplotlib で描画される Figure サイズを設定し、変更することもできます。このチュートリアルでは、フィギュアを作成する前後にフィギュアのサイズを操作する方法を示します。
Matplotlib で図を開始するときに図のサイズを設定する
pyplot.figure はパラメーターで指定された属性を持つ新しい Figure を作成します。figsize は Figure のサイズをインチ単位で定義します。
Matplotlib で Figure のサイズを設定するには figsize
from matplotlib import pyplot as plt
plt.figure(figsize=(4, 4))
plt.show()
Matplotlib で Figure サイズを設定するための rcParams
rcParams は Matplotlib のプロパティを含む辞書オブジェクトです。rcParams のキーfigure.figsize に値として Figure サイズを割り当てることができます。
from matplotlib import pyplot as plt
plt.rcParams["figure.figsize"] = (4, 4)
plt.plot([[1, 2], [3, 4]])
plt.show()
plt.rcParams は plt.plot の前または後に配置できます。同じスクリプトで作成された図は、割り当てられた図と同じサイズを共有します。
同じスクリプトで figure.figsize を複数回割り当てることができますが、作成された Figure には最初の設定のみが適用されます。
from matplotlib import pyplot as plt
plt.rcParams["figure.figsize"] = (6, 6)
plt.plot([[1, 2], [3, 4]])
plt.figure()
plt.rcParams["figure.figsize"] = (2, 2)
plt.plot([[1, 2], [3, 4]])
plt.show()
両方の図のサイズは (6, 6) ですが、(2, 2) ではありません。
set_size_inches は Figure が作成された後に Matplotlib の Figure サイズを変更する
Matplotlib で、図が既に作成されている場合、set_size_inches を使用して図のサイズを変更できます。
from matplotlib import pyplot as plt
fig1 = plt.figure(1)
plt.plot([[1, 2], [3, 4]])
fig2 = plt.figure(2)
plt.plot([[1, 2], [3, 4]])
fig1.set_size_inches(3, 3)
fig2.set_size_inches(4, 4)
plt.show()
ここで、fig1 と fig2 は作成された 2つの図への参照です。
set_size_inches にはオプション forward があり、デフォルト値は True です。これは、新しいサイズが与えられた後、キャンバスのサイズが自動的に更新されることを意味します。