Matplotlibは、視覚化を作成するための強力なPythonライブラリです。一般的なタスクの1つは、プレゼンテーション、出版物、または個人的な使用のために図のサイズを調整することです。この記事では、Matplotlibで図の寸法を制御するいくつかの方法について説明します。
目次
方法1:figsize
による図のサイズの指定
図のサイズを制御する最も簡単な方法は、plt.figure()
のfigsize
パラメータを使用することです。figsize
は、インチ単位のタプル(幅, 高さ)
を取ります。
import matplotlib.pyplot as plt
# 幅8インチ、高さ6インチの図を作成
fig = plt.figure(figsize=(8, 6))
# プロットを追加
plt.plot([1, 2, 3, 4], [5, 6, 7, 8])
plt.show()
これはプロットの前にサイズを設定する方法で、一般的に推奨されます。
方法2:作成後のサイズの調整
作成後に図のサイズを変更する必要がある場合は、set_size_inches()
メソッドを使用します。
import matplotlib.pyplot as plt
fig = plt.figure()
plt.plot([1, 2, 3, 4], [5, 6, 7, 8])
fig.set_size_inches(10, 4) # 10x4インチに変更
plt.show()
これは動的な調整に役立ちますが、最初にサイズを設定するよりも効率性が劣ります。
方法3:rcParams
によるデフォルトの図のサイズの指定
複数のプロットで一貫したサイズにするには、Matplotlibの実行時設定(rcParams
)を変更します。
import matplotlib.pyplot as plt
# デフォルトの図のサイズを6x4インチに設定
plt.rcParams["figure.figsize"] = [6, 4]
plt.plot([1, 2, 3, 4], [5, 6, 7, 8])
plt.show()
plt.figure()
plt.plot([1,2,3],[4,5,6])
plt.show()
これは、上書きされない限り、後続のすべての図に影響します。Matplotlibセッションが終了するまで変更は保持されます。
トラブルシューティング
Q:図がまだ小さすぎる/大きすぎます。
A:インチを使用していることを再確認してください。レイアウトに影響を与えるコード(例:tight_layout()
)を探します。異なるfigsize
値を試してください。
Q:アスペクト比を変更できますか?
A:はい、figsize
またはset_size_inches()
で幅と高さを調整します。
Q:figsize
とset_size_inches()
の両方を使用した場合どうなるか?
A:set_size_inches()
はfigsize
を上書きします。
Q:制限はありますか?
A:非常に大きな図は、パフォーマンスの問題を引き起こしたり、表示機能を超える可能性があります。非常に小さな図は、読み取りにくいコンテンツになる可能性があります。