Rimuovere o adattare il bordo della cornice della legenda utilizzando matplotlib


105

Quando si traccia un grafico utilizzando matplotlib:

  1. Come rimuovere la scatola della leggenda?
  2. Come cambiare il colore del bordo della casella della legenda?
  3. Come rimuovere solo il bordo della scatola della leggenda?

Risposte:


194

Quando si traccia un grafico utilizzando matplotlib:

Come rimuovere la scatola della leggenda?

plt.legend(frameon=False)

Come cambiare il colore del bordo della casella della legenda?

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

Come rimuovere solo il bordo della scatola della leggenda?

leg = plt.legend()
leg.get_frame().set_linewidth(0.0)

3
E nell'interfaccia OOP?
ifly

29

Un'altra domanda correlata, poiché mi ci è voluta un'eternità per trovare la risposta:

Come rendere vuoto lo sfondo della legenda ( cioè trasparente, non bianco):

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

Attenzione, vuoi 'none'(la stringa). Noneindica invece il colore predefinito.


7
Penso che il modo migliore per farlo sia usare framealpha, ie plt.legend(framealpha=0.0). Ciò includerebbe la scatola, però
MT
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.