ggplot2 - ajouter une ligne droite à un graphe : Ligne horizontale, verticale et droite de régression


Ce tutoriel décrit comment ajouter une ligne droite ou un trait sur un graphique généré avec le le logiciel R et le package ggplot2.

Les fonctions R ci-dessous peuvent être utilisées :

  • geom_hline() pour une ligne horizontale
  • geom_abline() pour une droite de régression
  • geom_vline() pour une ligne verticale
  • geom_segment() pour ajouter un segment

geom_hline : Ajouter une ligne horizontale

Un format simplifié de la fonction geom_hline() est :

geom_hline(yintercept, linetype, color, size)

Elle dessine un trait horizontal sur le graphique, en cours, au point d’ordonnée ‘y’ :

library(ggplot2)
# Nuage de points simple
sp <- ggplot(data=mtcars, aes(x=wt, y=mpg)) + geom_point()
# Ajouter une ligne horizontale au point y = 2O
sp + geom_hline(yintercept=20)
# Changer le type de trait ainsi que la couleur
sp + geom_hline(yintercept=20, linetype="dashed", color = "red")
# Changer l'épaisseur du trait
sp + geom_hline(yintercept=20, linetype="dashed", 
                color = "red", size=2)

Ajouter une ligne droite à un graphique - logiciel R et visualisation de donnéesAjouter une ligne droite à un graphique - logiciel R et visualisation de donnéesAjouter une ligne droite à un graphique - logiciel R et visualisation de données

Lire plus sur les types de traits : Types de traits dans R

geom_vline : Ajouter une ligne verticale

Un format simplifié de la fonction geom_vline() est :

geom_vline(xintercept, linetype, color, size)

Elle dessine une ligne verticale sur le graphique, en cours, au point d’ abscisse ‘x’ :

library(ggplot2)
# Ajouter un trait vertical au point x = 3
sp + geom_vline(xintercept = 3)
# Changer le type de trait, la couleur et l'épaisseur
sp + geom_vline(xintercept = 3, linetype="dotted", 
                color = "blue", size=1.5)

Ajouter une ligne droite à un graphique - logiciel R et visualisation de donnéesAjouter une ligne droite à un graphique - logiciel R et visualisation de données

geom_abline: Ajouter une droite de régression

Un format simplifié de la fonction geom_abline() est :

geom_abline(intercept, slope, linetype, color, size)

La fonction lm() est utilisée pour estimer la droite de régression :

# Estimer la regression linéaire
require(stats)
reg<-lm(mpg ~ wt, data = mtcars)
reg
## 
## Call:
## lm(formula = mpg ~ wt, data = mtcars)
## 
## Coefficients:
## (Intercept)           wt  
##      37.285       -5.344
coeff=coefficients(reg)
# Equation de la droite de regression :  
eq = paste0("y = ", round(coeff[2],1), "*x + ", round(coeff[1],1))
# Graphe
sp + geom_abline(intercept = 37, slope = -5)+
  ggtitle(eq)
# Changer le type de trait, la couleur et l'épaisseur
sp + geom_abline(intercept = 37, slope = -5, color="red", 
                 linetype="dashed", size=1.5)+
  ggtitle(eq)

Ajouter une ligne droite à un graphique - logiciel R et visualisation de donnéesAjouter une ligne droite à un graphique - logiciel R et visualisation de données

Notez que, la fonction stat_smooth() peut être utilisée pour estimer simplement la droite de régression.

sp + stat_smooth(method="lm", se=FALSE)

Ajouter une ligne droite à un graphique - logiciel R et visualisation de données

geom_segment : Ajouter un segment

Un format simplifié de la fonction geom_segment() est :

geom_segment(aes(x, y, xend, yend))

On peut l’utiliser comme suit :

# Ajouter un segment vertical
sp + geom_segment(aes(x = 4, y = 15, xend = 4, yend = 27))
# Ajouter un segment horizontal
sp + geom_segment(aes(x = 2, y = 15, xend = 3, yend = 15))

Ajouter une ligne droite à un graphique - logiciel R et visualisation de donnéesAjouter une ligne droite à un graphique - logiciel R et visualisation de données

Notez que, vous pouvez ajouter une flèche à la fin du segment. Le package grid est nécessaire

library(grid)
sp + geom_segment(aes(x = 5, y = 30, xend = 3.5, yend = 25),
                  arrow = arrow(length = unit(0.5, "cm")))

Ajouter une ligne droite à un graphique - logiciel R et visualisation de données

Infos

Cette analyse a été réalisée avec le logiciel R (ver. 3.1.2) et le package ggplot2 (ver. 1.0.0)









Want to Learn More on R Programming and Data Science?

Follow us by Email

by FeedBurner

On Social Networks:


 Get involved :
  Click to follow us on and Google+ :   
  Comment this article by clicking on "Discussion" button (top-right position of this page)
  Sign up as a member and post news and articles on STHDA web site.
Cette page a été vue 11998 fois