Comment ajouter une ligne moyenne au tracé dans ggplot2
Vous pouvez utiliser la syntaxe de base suivante pour ajouter une ligne qui représente la valeur moyenne dans un tracé dans ggplot2 :
ggplot(df, aes(x=x, y=y)) + geom_point() + geom_hline(yintercept = mean(df$y, na.rm=TRUE))
L’exemple suivant montre comment utiliser cette syntaxe dans la pratique.
Exemple : ajouter une ligne moyenne au tracé dans ggplot2
Supposons que nous ayons le bloc de données suivant dans R :
#create data frame
df <- data.frame(x=c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12),
y=c(2, 5, 6, 5, 7, 8, 10, 12, 10, 9, 11, 15))
#view head of data frame
head(df)
x y
1 1 2
2 2 5
3 3 6
4 4 5
5 5 7
6 6 8
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 :
library(ggplot2) #create scatter plot with average line to represent average y-value ggplot(df, aes(x=x, y=y)) + geom_point() + geom_hline(yintercept = mean(df$y, na.rm=TRUE))
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 mean(df$y, na.rm=TRUE) [1] 8.333333
Notez que nous pouvons également utiliser les arguments color , lty et lwd pour spécifier respectivement la couleur, le type de ligne et la largeur de ligne de la ligne moyenne :
library(ggplot2) #create scatter plot with custom average line ggplot(df, aes(x=x, y=y)) + geom_point() + geom_hline(yintercept = mean(df$y, na.rm=TRUE), color='blue', lty='dashed', lwd=2)
La ligne moyenne est désormais bleue, en pointillés et a une largeur de ligne de 2.
Vous pouvez trouver la documentation complète en ligne de la fonction geom_hline() ici .
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans ggplot2 :
Comment dessiner une ligne de tendance dans ggplot2
Comment ajuster l’épaisseur de la ligne dans ggplot2
Comment définir les limites de l’axe dans ggplot2