多数のサブプロットがある場合にサブプロットのサイズと間隔を改善する 質問する

多数のサブプロットがある場合にサブプロットのサイズと間隔を改善する 質問する

matplotlib で垂直に積み重ねられたプロットを大量に生成する必要があります。結果は を使用して保存されsavefig、Web ページに表示されるため、サブプロットが重ならないように間隔が空けられていれば、最終画像の高さは気にしません。

どれだけ大きな数字を許容しても、サブプロットは常に重複しているように見えます。

私のコードは現在次のようになっています

import matplotlib.pyplot as plt
import my_other_module

titles, x_lists, y_lists = my_other_module.get_data()

fig = plt.figure(figsize=(10,60))
for i, y_list in enumerate(y_lists):
    plt.subplot(len(titles), 1, i)
    plt.xlabel("Some X label")
    plt.ylabel("Some Y label")
    plt.title(titles[i])
    plt.plot(x_lists[i],y_list)
fig.savefig('out.png', dpi=100)

ベストアンサー1

確認してくださいmatplotlib: タイトレイアウトガイド使ってみてくださいmatplotlib.pyplot.tight_layout、 またはmatplotlib.figure.Figure.tight_layout

簡単な例を挙げます。

import matplotlib.pyplot as plt

fig, axes = plt.subplots(nrows=4, ncols=4, figsize=(8, 8))
fig.tight_layout() # Or equivalently,  "plt.tight_layout()"

plt.show()

タイトなレイアウトなし

ここに画像の説明を入力してください


タイトなレイアウト

ここに画像の説明を入力してください

おすすめ記事