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 41334 fois