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)


Enjoyed this article? I’d be very grateful if you’d help it spread by emailing it to a friend, or sharing it on Twitter, Facebook or Linked In.

Show me some love with the like buttons below... Thank you and please don't forget to share and comment below!!
Avez vous aimé cet article? Je vous serais très reconnaissant si vous aidiez à sa diffusion en l'envoyant par courriel à un ami ou en le partageant sur Twitter, Facebook ou Linked In.

Montrez-moi un peu d'amour avec les like ci-dessous ... Merci et n'oubliez pas, s'il vous plaît, de partager et de commenter ci-dessous!





Cette page a été vue 17551 fois
Licence - Pas d?Utilisation Commerciale - Partage dans les M?mes Conditions
Licence Creative Commons