Bagaimana untuk Menambah Legenda secara Manual dalam Matplotlib dengan Warna dan Label yang Berbeza?

Susan Sarandon
Lepaskan: 2024-10-22 15:09:03
asal
491 orang telah melayarinya

How to Manually Add Legends in Matplotlib with Distinct Colors and Labels?

Mencipta Legenda secara Manual dalam Matplotlib

Apabila bekerja dengan set data yang besar dalam matplotlib, menambah item secara manual pada legenda dengan warna dan label yang berbeza boleh menjadi teknik yang berguna. Ini menghalang pendua yang boleh timbul daripada memasukkan data secara automatik ke plot.

Pendekatan Asal

Pendekatan asal cuba menggunakan kod berikut:

ax2.legend(self.labels, colorList[:len(self.labels)])
plt.legend()
Salin selepas log masuk

di mana self.labels ialah bilangan label legenda yang diingini dan colorList ialah subset warna yang digunakan dalam plot. Walau bagaimanapun, kaedah ini tidak menghasilkan entri dalam legenda.

Penyelesaian

Untuk mencipta legenda secara manual, Panduan Legenda dalam dokumentasi matplotlib menyediakan penyelesaian. Ia melibatkan penciptaan artis khas, dipanggil Patch, yang boleh digunakan sebagai pemegang dalam legenda.

import matplotlib.patches as mpatches
import matplotlib.pyplot as plt

# Create a red patch
red_patch = mpatches.Patch(color='red', label='The red data')
Salin selepas log masuk

Patch ini kini mewakili data merah dan boleh ditambah terus pada legenda.

plt.legend(handles=[red_patch])
Salin selepas log masuk

Menambah Berbilang Tampalan

Untuk menambah berbilang warna dan label, teknik yang sama boleh digunakan dengan mencipta tampung tambahan.

blue_patch = mpatches.Patch(color='blue', label='The blue data')
plt.legend(handles=[red_patch, blue_patch])
Salin selepas log masuk

Ini akan menghasilkan legenda dengan dua entri, satu untuk setiap tampung.

Atas ialah kandungan terperinci Bagaimana untuk Menambah Legenda secara Manual dalam Matplotlib dengan Warna dan Label yang Berbeza?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
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!