Bagaimana untuk Mencipta Legenda Bersatu untuk Berbilang Subplot dalam Matplotlib?

Susan Sarandon
Lepaskan: 2024-11-04 02:29:30
asal
170 orang telah melayarinya

How to Create a Unified Legend for Multiple Subplots in Matplotlib?

Mencipta Lagenda Bersatu untuk Berbilang Subplot dalam Matplotlib

Dalam Matplotlib, apabila memplot data merentas berbilang subplot, selalunya wajar untuk memaparkan satu legenda untuk semua plot . Ini amat berguna apabila subplot berkongsi gaya baris, warna atau label yang serupa. Dengan menyatukan legenda, ia membantu memudahkan visualisasi dan mengurangkan kekusutan.

Untuk mencapai matlamat ini, Matplotlib menyediakan fungsi yang mudah dipanggil get_legend_handles_labels(). Fungsi ini boleh dipanggil pada paksi terakhir dalam grid, dan ia mengumpul semua maklumat legenda yang diperlukan daripada label= argumen yang digunakan semasa merancang. Pemegang dan label yang dikumpul kemudiannya boleh digunakan untuk mencipta satu legenda untuk keseluruhan angka.

Sebagai contoh, jika anda mempunyai sembilan subplot yang disusun dalam grid 3x3, anda boleh mendapatkan elemen legenda daripada subplot terakhir menggunakan kod berikut:

handles, labels = ax.get_legend_handles_labels()
Salin selepas log masuk

di mana kapak mewakili paksi subplot terakhir dalam grid. Dengan pemegang dan label yang dikumpul, lagenda boleh dibuat menggunakan fig.legend():

fig.legend(handles, labels, loc='upper center')
Salin selepas log masuk

Dalam kes ini, lagenda akan diletakkan di lokasi 'tengah atas' dalam rajah. Argumen loc= boleh disesuaikan untuk meletakkan legenda di mana-mana dalam rajah.

Sebagai alternatif, jika anda menggunakan antara muka pyplot dan bukannya antara muka Axes, kod berikut boleh digunakan untuk mendapatkan semula pemegang dan label legenda:

handles, labels = plt.gca().get_legend_handles_labels()
Salin selepas log masuk

di mana plt.gca() mengembalikan objek paksi semasa.

Atas ialah kandungan terperinci Bagaimana untuk Mencipta Legenda Bersatu untuk Berbilang Subplot dalam Matplotlib?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!