Come aggiungere la linea media alla trama in matplotlib
Puoi utilizzare la seguente sintassi di base per aggiungere una linea media a un grafico in Matplotlib:
import matplotlib. pyplot as plt import numpy as np #create scatterplot plt. scatter (df. x , df. y ) #add horizontal line at mean value of y plt. axhline (y=np. nanmean (df. y ))
Si noti che axhline aggiunge una linea orizzontale al grafico e nanmean calcola il valore medio (ignorando NaNs) nel punto in cui deve essere posizionata la linea.
L’esempio seguente mostra come utilizzare questa sintassi nella pratica.
Esempio: aggiungi una linea media alla trama in Matplotlib
Supponiamo di avere i seguenti panda DataFrame:
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' x ': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12],
' y ':[2, 5, 6, 5, 7, 8, 10, 12, 10, 9, 11, 15]})
#view first five rows of DataFrame
df. head ()
x y
0 1 2
1 2 5
2 3 6
3 4 5
4 5 7
Possiamo utilizzare il codice seguente per creare un grafico a dispersione di x rispetto a y e aggiungere una linea orizzontale che rappresenta il valore medio di y:
import matplotlib. pyplot as plt import numpy as np #create scatterplot plt. scatter (df. x , df. y ) #add horizontal line at mean value of y plt. axhline (y=np. nanmean (df. y ))
Possiamo vedere che una linea media è stata aggiunta al grafico appena sopra il valore y di 8.
Se calcoliamo il valore medio di y, troveremo che è 8.333:
#calculate average y-value n.p. nanmean (df. y ) 8.333333333
Nota che possiamo anche usare gli argomenti color , linestyle e linewidth per specificare rispettivamente il colore, il tipo di linea e la larghezza della linea media:
import matplotlib. pyplot as plt import numpy as np #create scatterplot plt. scatter (df. x , df. y ) #add horizontal line at mean value of y plt. axhline (y=np. nanmean (df. y ), color=' red ', linestyle=' -- ', linewidth= 3 , label=' Avg ')
Nota : puoi trovare la documentazione online completa per la funzione axhline() qui .
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre attività comuni in Matplotlib:
Come aggiungere una linea di tendenza in Matplotlib
Come disegnare una linea verticale in Matplotlib
Come tracciare più linee in Matplotlib