library(ggplot2)
p <- ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
geom_point(size = 2) +
theme_minimal()
p
Déplacer, renommer, réordonner, styliser et supprimer une légende ggplot2 — en direct dans votre navigateur
Apprenez à contrôler la légende d’un graphique ggplot2 en R — changez sa position (haut, bas, gauche, droite, à l’intérieur ou aucune), modifiez le titre et les étiquettes, réordonnez les éléments, stylisez-la et supprimez-la. Modifiez et exécutez le code en direct, sans aucune installation.
20 juin 2026
7 juillet 2026
colour, fill, etc.theme(legend.position = ...) : "top", "bottom", "left", "right", "none", ou à l’intérieur du graphique.labs() ; réétiquetez et réordonnez les éléments via l’échelle ou les niveaux du facteur.theme(legend.* = ...).legend.position = "none", ou pour un seul attribut esthétique avec guides().Chaque fois que vous associez une variable à un attribut esthétique — colour, fill, shape, size — ggplot2 ajoute une légende afin que les lecteurs puissent décoder les groupes. Le réglage par défaut convient généralement, mais une figure prête à publier nécessite souvent que la légende soit déplacée, renommée, réordonnée, restylisée ou supprimée. Cette leçon est la référence complète pour tout cela ; les figures sont rendues ici même, et vous pouvez réexécuter ou modifier n’importe laquelle d’entre elles en direct.
Nous partirons d’un seul graphique tout au long de cette leçon — un nuage de points des données intégrées iris, coloré par Species, ce qui nous donne une légende à trois éléments à contrôler.
De loin la tâche la plus courante. Passez un mot-clé à legend.position pour ancrer la légende sur n’importe quel côté, ou retirez-la avec "none".
Pour placer la légende à l’intérieur de la zone de tracé, utilisez legend.position = "inside" et indiquez des coordonnées (de 0 à 1) avec legend.position.inside.
Le titre de la légende provient de la variable associée. Renommez-le avec labs() (en nommant l’attribut esthétique — ici color), ou retirez le titre avec labs(color = NULL).
Pour renommer les éléments (et non le titre), définissez labels sur l’échelle correspondante. Ordonnez les étiquettes pour correspondre aux niveaux du facteur (setosa, versicolor, virginica).
La légende suit l’ordre des niveaux du facteur. Pour un ordre personnalisé, redéfinissez les niveaux du facteur avant le tracé — la légende (et l’association des couleurs) suivent alors le nouvel ordre. Pour simplement retourner la légende de haut en bas, inversez-la avec guides().
Redéfinissez les niveaux du facteur pour un ordre personnalisé :

Ou conservez les données telles quelles et inversez simplement toute la légende :
Restylisez le titre, le texte et l’arrière-plan via theme(). Augmentez la taille avec legend.key.size.
Retirez entièrement la légende avec legend.position = "none" :
Pour supprimer la légende d’un seul attribut esthétique (lorsque vous en avez plusieurs), définissez ce guide sur "none" — par exemple guides(color = "none") conserve une légende de taille ou de forme tout en retirant celle de la couleur.
Vous pouvez aussi supprimer la contribution à la légende au niveau du geom avec show.legend = FALSE. C’est l’outil à utiliser lorsqu’une seule couche ne doit pas alimenter la légende — une étiquette, une annotation ou une couche d’arrière-plan — tandis que les autres le font toujours :
Associez deux attributs esthétiques et vous obtenez deux légendes. Définissez l’order de chaque guide pour fixer leur disposition verticale, et retirez l’une d’elles avec "none" tout en conservant les autres. Ici la couleur montre Species et la taille montre Petal.Length, ce qui donne deux légendes :

order est un petit entier ; les nombres plus petits se placent plus haut. Pour ne conserver qu’une seule des deux, définissez l’autre sur "none" — par exemple guides(size = "none") ne laisse que la légende des couleurs.
Les graphiques ci-dessus ont été rendus au moment de la construction. Envie d’expérimenter ? Modifiez le code et appuyez sur Run — il s’exécute dans votre navigateur via webR (sans serveur, sans installation).
Vous travaillez en Python ? Un guide des légendes matplotlib arrive bientôt dans la série Python.
Demandez à Prova « comment déplacer la légende à l’intérieur du graphique, en haut à gauche ? » — elle répond avec du code que vous pouvez exécuter sur votre propre graphique, pour que la correction soit reproductible. The runtime is the judge. Demander à Prova →
Ajoutez theme(legend.position = "bottom") à votre graphique. La même approche par mot-clé fonctionne pour "top", "left" et "right".
Définissez theme(legend.position = "none") pour retirer entièrement la légende. Pour supprimer la légende d’un seul attribut esthétique tout en conservant les autres, définissez ce guide sur "none" — par exemple guides(color = "none").
Utilisez labs() et nommez l’attribut esthétique dont provient la légende, comme labs(color = "Iris species"). Pour masquer complètement le titre, définissez-le sur NULL avec labs(color = NULL).
Définissez labels sur l’échelle correspondante, par ex. scale_color_discrete(labels = c("Setosa", "Versicolor", "Virginica")). Indiquez les étiquettes dans le même ordre que les niveaux du facteur pour que chaque élément reçoive le bon nom.
Utilisez legend.position = "inside" avec legend.position.inside, en indiquant des coordonnées de 0 à 1 — par exemple theme(legend.position = "inside", legend.position.inside = c(0.88, 0.80)) la place en haut à droite.
Complétez le code pour que la légende se place sous le graphique.
library(ggplot2)
ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
geom_point(size = 2) +
theme_minimal() +
theme(legend.position = "bottom")
Vous avez déplacé une légende ggplot2 sur n’importe quel côté ou à l’intérieur du graphique, renommé son titre et ses éléments, réordonné et inversé ceux-ci, stylisé le titre/texte/arrière-plan, et supprimé la légende entièrement ou par attribut esthétique. Ces contrôles s’appliquent à tous les graphiques ggplot — la boîte à moustaches, le graphique en violon, le diagramme en barres et le nuage de points utilisent tous la même grammaire de légende.
Vous préférez un livre ? GGPlot2 Essentials est disponible en PDF téléchargeable — toutes les leçons de cette série, hors ligne et à vous.
Prouvez que vous savez le faire. Maîtrisez toute la série ggplot2 — suivez votre parcours, construisez des projets et obtenez un certificat.
Passez à Pro — Prova illimité sur vos propres données et un certificat vérifiable qui atteste la compétence.
dès 15 $/mois facturé annuellement
✓ Vous êtes Pro — continuez. The runtime is the judge.
Prêt à passer à la vitesse supérieure ?
Recevez les nouvelles leçons R & Python par e-mail
Pratique, reproductible, sans spam. Désinscription à tout moment.
Double opt-in. Nous ne partageons jamais votre e-mail.
Cette leçon est reproductible : les figures sont exécutées au moment de la construction (si elles s’affichent, le code fonctionne), et le bac à sable et le quiz se réexécutent en direct dans votre navigateur. The runtime is the judge.
@online{2026,
author = {},
title = {Légende ggplot2 en R : position, titre et étiquettes},
date = {2026-06-20},
url = {https://www.datanovia.com/learn/data-visualization/ggplot2/legend},
langid = {fr}
}