Come posizionare la legenda all'esterno di un grafico matplotlib


Spesso potresti voler posizionare la legenda di un grafico Matplotlib al di fuori del grafico reale.

Fortunatamente, questo è facile da fare utilizzando la funzione matplotlib.pyplot.legend() combinata con l’argomento bbox_to_anchor .

Questo tutorial mostra diversi esempi di utilizzo pratico di questa funzione.

Esempio 1: posiziona la didascalia nell’angolo in alto a destra

Il codice seguente mostra come posizionare la legenda nell’angolo in alto a destra all’esterno di un grafico Matplotlib:

 import matplotlib.pyplot as plt

#createplot
plt. subplot (211)
plt. plot ([2, 4, 6], label=" First Data ")
plt. plot ([6, 4, 2], label=" Second Data ")

#place legend in top right corner
plt. legend (bbox_to_anchor=(1,1), loc=" upper left ")

#showplot
plt. show ()

Posiziona la legenda fuori dal grafico Matplotlib

Si noti che l’argomento loc indica a Matplotlib di posizionare l’angolo superiore sinistro della linea della legenda nelle coordinate (x,y) di (1,1) nel grafico.

Esempio 2: posiziona la didascalia nell’angolo in basso a destra

Il codice seguente mostra come posizionare la legenda nell’angolo in basso a destra all’esterno di un grafico Matplotlib:

 import matplotlib.pyplot as plt

#createplot
plt. subplot (211)
plt. plot ([2, 4, 6], label=" First Data ")
plt. plot ([6, 4, 2], label=" Second Data ")

#place legend in top right corner
plt. legend (bbox_to_anchor=(1,0), loc=" lower left ")

#showplot
plt. show () 

Legenda fuori dal grafico Matplotlib nell'angolo

Si noti che l’argomento loc indica a Matplotlib di posizionare l’angolo inferiore sinistro della linea della legenda nelle coordinate (x,y) di (1,0) nel grafico.

Esempio 3: posiziona la legenda sopra la trama

Il codice seguente mostra come posizionare la legenda sopra il grafico Matplotlib:

 import matplotlib.pyplot as plt

#createplot
plt. subplot (211)
plt. plot ([2, 4, 6], label=" First Data ")
plt. plot ([6, 4, 2], label=" Second Data ")

#place legend above plot
plt. legend (bbox_to_anchor=(0, 1, 1, 0), loc=" lower left ", mode=" expand ", ncol= 2 )

#showplot
plt. show () 

Posiziona la legenda sopra la trama in Matplotlib

Si noti che l’argomento mode dice a Matplotlib di estendere la legenda alla lunghezza del grafico e l’argomento ncol dice a Matplotlib di posizionare le etichette della legenda in 2 colonne.

Potremmo anche tralasciare gli argomenti mode e ncol se vogliamo semplicemente posizionare la legenda nell’angolo in alto a sinistra sopra la trama:

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre attività comuni in Matplotlib:

Come modificare la dimensione del carattere su un grafico Matplotlib
Come rimuovere i segni di spunta dai grafici Matplotlib
Come mostrare le griglie sui grafici Matplotlib

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *