Come annotare i grafici a dispersione matplotlib


È possibile utilizzare la seguente sintassi di base per annotare i grafici a dispersione in Matplotlib:

 #add 'my text' at (x, y) coordinates = (6, 9.5)
plt. text (6, 9.5, ' my text ')

Gli esempi seguenti mostrano come utilizzare questa sintassi nella pratica.

Crea una nuvola di punti di base

Il codice seguente mostra come creare un grafico a dispersione di base utilizzando Matplotlib:

 import matplotlib.pyplot as plt

#createdata
x = [3, 6, 8, 12, 14]
y = [4, 9, 14, 12, 9]

#create scatterplot
plt. scatter (x,y)

Annotare un singolo punto

Possiamo usare il seguente codice per aggiungere un’annotazione a un singolo punto sulla trama:

 import matplotlib.pyplot as plt

#create data
x = [3, 6, 8, 12, 14]
y = [4, 9, 14, 12, 9]

#create scatterplot
plt. scatter (x,y)

#add text 'Here' at (x, y) coordinates = (6, 9.5)
plt. text (6, 9.5, ' Here ')

Grafico a dispersione con annotazione in Matplotlib

Annota più punti

Possiamo utilizzare il seguente codice per aggiungere annotazioni a più punti sulla trama:

 import matplotlib.pyplot as plt

#create data
x = [3, 6, 8, 12, 14]
y = [4, 9, 14, 12, 9]

#create scatterplot
plt. scatter (x,y)

#add text to certain points
plt. text (3, 4.5, ' This ')
plt. text (6, 9.5, ' That ')
plt. text (8.2, 14, ' Those ')

Annota più punti sulla nuvola di punti Matplotlib

Annota tutti i punti

Possiamo usare il seguente codice per aggiungere annotazioni a ciascun punto della trama:

 import matplotlib.pyplot as plt

#createdata
x = [3, 6, 8, 12, 14]
y = [4, 9, 14, 12, 9]
labs = ['A', 'B', 'C', 'D', 'E']

#create scatterplot
plt. scatter (x,y)

#use for loop to add annotations to each point in plot 
for i, txt in enumerate(labs):
    plt. annotate (txt, (x[ i ], y[ i ])) 

Annotare la nuvola di punti Matplotlib

Per impostazione predefinita, le annotazioni vengono posizionate direttamente sopra i punti nella nuvola di punti e la dimensione del carattere predefinita è 10.

Il codice seguente mostra come regolare queste due impostazioni in modo che le annotazioni siano leggermente a destra dei punti e la dimensione del carattere sia leggermente più grande:

 import matplotlib.pyplot as plt

#create data
x = [3, 6, 8, 12, 14]
y = [4, 9, 14, 12, 9]
labs = ['A', 'B', 'C', 'D', 'E']

#create scatterplot
plt. scatter (x,y)

#use for loop to add annotations to each point in plot 
for i, txt in enumerate(labs):
    plt. annotate (txt, (x[ i ]+.25, y[ i ]), fontsize=12) 

Matplotlib annota ogni punto della trama

Risorse addizionali

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

Come aggiungere la legenda al grafico a dispersione in Matplotlib
Come colorare un grafico a dispersione in base al valore in Matplotlib
Come aggiungere una linea media ai grafici in Matplotlib

Aggiungi un commento

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