Hapus atau sesuaikan batas bingkai legenda menggunakan matplotlib

105

Saat merencanakan plot menggunakan matplotlib:

  1. Bagaimana cara menghapus kotak legenda?
  2. Bagaimana cara mengubah warna batas kotak legenda?
  3. Bagaimana cara menghapus hanya batas kotak legenda?
Mattijn
sumber

Jawaban:

194

Saat merencanakan plot menggunakan matplotlib:

Bagaimana cara menghapus kotak legenda?

plt.legend(frameon=False)

Bagaimana cara mengubah warna batas kotak legenda?

leg = plt.legend()
leg.get_frame().set_edgecolor('b')

Bagaimana cara menghapus hanya batas kotak legenda?

leg = plt.legend()
leg.get_frame().set_linewidth(0.0)
Mattijn
sumber
3
Bagaimana dengan antarmuka OOP?
ifly6
29

Satu lagi pertanyaan terkait, karena saya butuh waktu lama untuk menemukan jawabannya:

Cara membuat latar belakang legenda kosong ( yaitu transparan, bukan putih):

legend = plt.legend()
legend.get_frame().set_facecolor('none')

Peringatan, Anda menginginkan 'none'(string). Noneberarti warna default sebagai gantinya.

Kevin J. Black
sumber
7
Saya pikir cara yang disukai untuk melakukan ini adalah dengan menggunakan framealpha, yaitu plt.legend(framealpha=0.0). Itu akan termasuk kotak, meskipun
MT