Matplotlibは、視覚化を作成するための強力なPythonライブラリです。プロットの生成は簡単ですが、読みやすさとプレゼンテーションのためにサイズを制御することが重要です。この記事では、Matplotlibプロットのサイズを調整する様々な方法について説明します。
目次
figure()
でfigsize
を設定する- グローバルな変更のための
rcParams
を変更する set_figheight()
とset_figwidth()
を使うset_size_inches()
を使う- 図表形式と
savefig()
1. figure()
でfigsize
を設定する
最も簡単な方法は、matplotlib.pyplot.figure()
でfigsize
引数を指定することです。figsize
は、インチ単位のタプル(幅、高さ)を取ります。
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 10, 100)
y = np.sin(x)
fig = plt.figure(figsize=(10, 6)) # 幅10インチ、高さ6インチ
ax = fig.add_subplot(111)
ax.plot(x, y)
plt.show()
2. グローバルな変更のためのrcParams
を変更する
すべてプロットのデフォルトの図表サイズを変更するには、rcParams
辞書を変更します。これにより、上書きされない限り、デフォルトサイズが設定されます。
import matplotlib.pyplot as plt
import matplotlib as mpl
import numpy as np
mpl.rcParams['figure.figsize'] = (8, 4) # デフォルト:8x4インチ
x = np.linspace(0, 10, 100)
y = np.cos(x)
plt.plot(x, y)
plt.show()
3. set_figheight()
とset_figwidth()
を使う
図表オブジェクトのset_figheight()
とset_figwidth()
メソッドを使用して、図表作成後にサイズを調整します。
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 10, 100)
y = np.exp(-x)
fig = plt.figure()
ax = fig.add_subplot(111)
ax.plot(x, y)
fig.set_figheight(5) # 高さ5インチ
fig.set_figwidth(12) # 幅12インチ
plt.show()
4. set_size_inches()
を使う
set_size_inches()
は、(幅、高さ)のタプルを取ることで、寸法を変更する簡潔な方法を提供します。
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 10, 100)
y = x**2
fig = plt.figure()
ax = fig.add_subplot(111)
ax.plot(x, y)
fig.set_size_inches(7, 3) # 7x3インチ
plt.show()
5. 図表形式とsavefig()
図表形式(PNG、PDF、SVG)は、保存された出力サイズに影響します。高解像度の形式(SVG)はスケーラブルです。savefig()
を使用して、形式と解像度(dpi
)を制御します。
import matplotlib.pyplot as plt
import numpy as np
# ... (プロットコード) ...
plt.savefig("myplot.png", dpi=300) # 高解像度PNG
plt.savefig("myplot.pdf") # ベクタ形式
plt.savefig("myplot.svg") # ベクタ形式
これらの方法は、明確で視覚的に魅力的な視覚化のためのMatplotlibプロットサイズの管理において柔軟性を提供します。