Comment ajouter une ligne moyenne au tracé dans Matplotlib



Vous pouvez utiliser la syntaxe de base suivante pour ajouter une ligne moyenne à un tracé dans Matplotlib :

import matplotlib.pyplot as plt
import numpy as np

#create scatter plot
plt.scatter(df.x, df.y)

#add horizontal line at mean value of y
plt.axhline(y=np.nanmean(df.y))

Notez que axhline ajoute une ligne horizontale au tracé et que nanmean calcule la valeur moyenne (en ignorant les NaN) à l’endroit où la ligne doit être placée.

L’exemple suivant montre comment utiliser cette syntaxe dans la pratique.

Exemple : ajouter une ligne moyenne au tracé dans Matplotlib

Supposons que nous ayons le DataFrame pandas suivant :

import pandas as pd

#create DataFrame
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

Nous pouvons utiliser le code suivant pour créer un nuage de points de x par rapport à y et ajouter une ligne horizontale qui représente la valeur y moyenne :

import matplotlib.pyplot as plt
import numpy as np

#create scatter plot
plt.scatter(df.x, df.y)

#add horizontal line at mean value of y
plt.axhline(y=np.nanmean(df.y))

Nous pouvons voir qu’une ligne moyenne a été ajoutée au tracé juste au-dessus de la valeur y de 8.

Si nous calculons la valeur y moyenne, nous constaterons qu’elle est de 8,333 :

#calculate average y-value
np.nanmean(df.y)

8.333333333

Notez que nous pouvons également utiliser les arguments color , linestyle et linewidth pour spécifier respectivement la couleur, le type de ligne et la largeur de ligne de la ligne moyenne :

import matplotlib.pyplot as plt
import numpy as np

#create scatter plot
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')

ligne moyenne dans Matplotlib

Remarque : Vous pouvez trouver la documentation complète en ligne de la fonction axhline() ici .

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans Matplotlib :

Comment ajouter une ligne de tendance dans Matplotlib
Comment dessiner une ligne verticale dans Matplotlib
Comment tracer plusieurs lignes dans Matplotlib

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *