Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Menghalang Pertindihan Subplot Apabila Mencipta Banyak Subplot dalam Matplotlib?

Bagaimanakah Saya Boleh Menghalang Pertindihan Subplot Apabila Mencipta Banyak Subplot dalam Matplotlib?

DDD
DDDasal
2024-12-13 01:31:09120semak imbas

How Can I Prevent Subplot Overlap When Creating Many Subplots in Matplotlib?

Mengoptimumkan Kemunculan Subplot untuk Banyak Subplot dalam Matplotlib

Apabila mencipta visualisasi kompleks dengan matplotlib, selalunya perlu memaparkan berbilang subplot yang disusun secara menegak. Walau bagaimanapun, menampung jarak yang sesuai antara subplot ini untuk mengelakkan pertindihan boleh menjadi satu cabaran.

Untuk menangani isu ini, pertimbangkan penyelesaian berikut:

import matplotlib.pyplot as plt

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)

# Adjust subplot spacing
plt.tight_layout()  # Or equivalently, "plt.figure.Figure.tight_layout()"

fig.savefig('out.png', dpi=100)

Fungsi plt.tight_layout() secara automatik melaraskan jarak subplot, memastikan subplot muat kemas dalam sempadan rajah. Ciri ini amat berguna apabila menjana bilangan subplot yang banyak dan tidak terikat dengan ketinggian rajah.

Untuk rujukan, imej berikut menunjukkan kesan penggunaan plt.tight_layout():

Tanpa Susun Atur Ketat

[Imej bertindih subplot]

Dengan Susun Atur Ketat

[Imej subplot dijarakkan dengan betul]

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menghalang Pertindihan Subplot Apabila Mencipta Banyak Subplot dalam Matplotlib?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn