Ajouter une l?gende aux graphiques avec le logiciel R : Comment prendre le contr?le ?


La fonction legend()

La fonction legend() est utilis?e pour ajouter des l?gendes aux graphiques g?n?rer par logiciel statistiques R. Un format simplifi? de la fonction est:

legend(x, y=NULL, legend, fill, col, bg)

  • x et y indiquent les coordonn?es ? utiliser pour positionner la l?gende
  • legend: texte de la l?gende
  • fill: couleur de remplissage des carr?s ? c?t? de la l?gende
  • col: couleurs des traits ou points qui apparaissent dans la l?gende
  • bg : couleur de fond de la l?gende


Exemple :

x<-1:10; y1=x*x; y2=2*y1
plot(x, y1, type="b", pch=19, col="red", xlab="x", ylab="y")
# Ajouter une ligne
lines(x, y2, pch=18, col="blue", type="b", lty=2)
# Ajouter une l?gende
legend(1, 95, legend=c("Line 1", "Line 2"),
       col=c("red", "blue"), lty=1:2, cex=0.8)

Logiciel R : Ajouter une l?gende

Pour ?viter de r?p?ter le code R, ci-dessus, nous allons cr?er une fonction qui va nous permettre de g?n?rer automatiquement un graphe.

makePlot<-function(){
  x<-1:10; y1=x*x; y2=2*y1
  plot(x, y1, type="b", pch=19, col="red", xlab="x", ylab="y")
  lines(x, y2, pch=18, col="blue", type="b", lty=2)
}

Titre, style de police et couleur de remplissage de la l?gende

Les param?tres suivants peuvent ?tre utilis?s:

  • title: titre de la l?gende
  • text.font: style de la police du texte de la l?gende; valeurs possibles :
    • 1: texte normale
    • 2: texte en gras
    • 3: texte en italique
    • 4: texte en italique gras
  • bg: couleur de fond du rectangle de la l?gende
makePlot()
legend(1, 95, legend=c("Line 1", "Line 2"),
       col=c("red", "blue"), lty=1:2, cex=0.8,
       title="Line types", text.font=4, bg='lightblue')

Logiciel R : Ajouter une l?gende

Bordure de la l?gende

Les param?tres box.lty, box.lwd, box.col peuvent ?tre utilis?s pour modifier, respectivement, le type de trait, l??paisseur et la couleur de la bordure de la l?gende.

# Supprimer la bordure
makePlot()
legend(1, 95, legend=c("Line 1", "Line 2"),
       col=c("red", "blue"), lty=1:2, cex=0.8,
       box.lty=0)
# Changer la bordure
makePlot()
legend(1, 95, legend=c("Line 1", "Line 2"),
       col=c("red", "blue"), lty=1:2, cex=0.8,
       box.lty=2, box.lwd=2, box.col="green")

Logiciel R : Ajouter une l?gendeLogiciel R : Ajouter une l?gende

Sp?cifier la position de la l?gende par mots cl?s

La position de la l?gende peut ?tre sp?cifi?e en utilisant les mots cl?s suivants: ?bottomright?, ?bottom?, ?bottomleft?, ?left?, ?topleft?, ?top?, ?topright?, ?right? et ?center?.

L?effet produit par chacun des mots cl?s, cit?s ci-dessus, est montr? sur la figure ci-dessous:

Logiciel R : Ajouter une l?gende

Exemple 1: lineplot

#  Exemple 1: lineplot
makePlot()
legend("topleft", legend=c("Line 1", "Line 2"),
       col=c("red", "blue"), lty=1:2, cex=0.8)

Logiciel R : Ajouter une l?gende

Exemple 2: boxplot

attach(mtcars)
boxplot(mpg~cyl, 
        xlab="Cylinders", ylab="Miles/(US) gallon", 
        col=topo.colors(3))
   
legend("bottomleft", inset=.02, title="Number of Cylinders",
   c("4","6","8"), fill=topo.colors(3), horiz=TRUE, cex=0.8)

Logiciel R : Ajouter une l?gende

Notez que l?argument fill correspond aux couleurs de remplissage des carr?s qui sont juste ? c?t? des textes de la l?gende

Infos

Cette analyse a ?t? r?alis?e avec le logiciel R (ver. 3.1.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 36293 fois
Licence - Pas d?Utilisation Commerciale - Partage dans les M?mes Conditions
Licence Creative Commons