library(ggplot2)
ggplot(mtcars, aes(x = wt, y = mpg))
Construisez un graphique pièce par pièce — données, attributs esthétiques, géométrie — en direct dans votre navigateur
Apprenez ggplot2 en R à partir de zéro — la grammaire des graphiques (données + attributs esthétiques + géométrie), comment construire un graphique couche par couche avec ggplot() et geom_*(), associer des variables à la couleur, la taille ou la forme, et le personnaliser. Le point de départ de toute la série ggplot2.
20 juin 2026
7 juillet 2026
aes()) associent des variables à des propriétés visuelles (x, y, couleur, taille, forme) ; la géométrie (geom_*()) est le type de graphique (points, lignes, barres…).+ : ggplot(data, aes(...)) + geom_point().colour, size ou shape pour encoder des dimensions supplémentaires.labs(), theme_*(), les facettes et les échelles — chacun a sa propre leçon dans cette série.ggplot2 est le package R le plus populaire pour la visualisation de données, et pour de bonnes raisons : au lieu de mémoriser une fonction distincte pour chaque graphique, vous décrivez un graphique avec une grammaire réduite et cohérente. Une fois que vous avez compris la grammaire, vous pouvez construire n’importe quel graphique — et lire le code ggplot2 de n’importe qui d’autre. Cette leçon est le point de départ de toute la série ggplot2 ; elle explique la grammaire et construit vos premiers graphiques étape par étape.
Chaque ggplot est constitué de trois éléments fondamentaux :
aes() associe des variables à ce que vous voyez : les positions x et y, et éventuellement colour, fill, size, shape.geom_*() qui décide du type de graphique : geom_point() pour un nuage de points, geom_line() pour une ligne, geom_bar() pour des barres, et ainsi de suite.Nous utiliserons le jeu de données intégré mtcars (poids des voitures wt versus miles par gallon mpg).
Commencez par ggplot() et l’association données + attributs esthétiques. À elle seule, elle dessine un canevas vide — elle connaît les axes mais pas encore ce qu’il faut dessiner :
Ajoutez une couche de géométrie avec + pour dessiner les données — ici, des points (un nuage de points) :
C’est tout le schéma : ggplot(data, aes(...)) + geom_*(). Tout le reste consiste à ajouter ou à ajuster des couches.
La puissance de la grammaire : associez une troisième variable à un attribut esthétique pour encoder davantage d’informations. Associez le nombre de cylindres (cyl) à colour (enveloppez-le dans factor() pour qu’il soit traité comme des groupes), avec une palette adaptée au daltonisme :

Remplacez colour par size ou shape pour encoder la variable différemment — même grammaire, attribut esthétique différent.
Gardez la grammaire, changez le geom_*(), et vous obtenez un graphique différent. Une boîte à moustaches de la longueur des dents par dose (jeu de données intégré ToothGrowth) :

Chaque type de graphique est un geom_*() avec sa propre leçon : nuages de points, boîtes à moustaches, graphiques en violon, diagrammes en barres, graphiques en courbes, histogrammes, graphiques de densité, et plus encore.
Ajoutez davantage de couches pour affiner la figure — un titre et des étiquettes d’axes avec labs(), et une apparence globale avec un theme_*() :

À partir d’ici, chaque personnalisation a sa propre leçon : titres, sous-titres et légendes, la légende, couleurs et palettes, thèmes, facettes (plusieurs panneaux), et graduations des axes.
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 ? Une introduction à matplotlib/seaborn arrive dans la série Python.
Demandez à Prova « qu’est-ce qui change quand on associe une variable à la couleur plutôt qu’à la taille dans ce graphique ? » — elle répond avec du code que vous pouvez exécuter, pour que la grammaire devienne limpide. The runtime is the judge. Demander à Prova →
La grammaire des graphiques, c’est l’idée que chaque graphique se construit à partir de quelques éléments combinables : les données (un data frame), les attributs esthétiques (aes(), qui associent des variables à des propriétés visuelles comme x, y, colour, size, shape) et une géométrie (geom_*(), le type de graphique). Vous décrivez un graphique en combinant ces éléments, au lieu de mémoriser une fonction distincte par type de graphique.
Vous combinez les couches avec l’opérateur + : commencez par ggplot(data, aes(...)), puis ajoutez une géométrie comme + geom_point(), et continuez d’ajouter des couches telles que + labs(...) ou + theme_minimal(). Chaque + ajoute ou ajuste une couche, de sorte que le graphique se construit pièce par pièce.
Mettez-la à l’intérieur de aes() pour associer une variable (aes(colour = factor(cyl)) colore les points par groupe et ajoute une légende) ; mettez-la à l’extérieur de aes(), directement dans le geom, pour fixer une couleur unique (geom_point(colour = "#3a86d4") donne cette couleur à chaque point, sans légende). L’association encode des données ; le réglage relève du pur style.
Gardez le même ggplot() et le même aes(), et remplacez la couche de géométrie : utilisez geom_point() pour un nuage de points, geom_boxplot() pour une boîte à moustaches, geom_line() pour une ligne, geom_bar() pour des barres, et ainsi de suite. La grammaire reste la même — seul le geom_*() change.
Ajoutez une couche labs() : + labs(title = "My title", x = "Weight", y = "Miles per gallon"). Vous pouvez aussi y définir le titre de la légende (par exemple labs(colour = "Cylinders")), et l’associer à un theme_*() comme theme_minimal() pour l’apparence globale.
Vous avez appris la grammaire des graphiques — données + attributs esthétiques + géométrie — et construit des ggplots couche par couche avec ggplot() et geom_*(), associé des variables à la couleur, et ajouté des titres et un thème. Ce schéma unique débloque chaque graphique de cette série. Commencez par le nuage de points et parcourez la série ggplot2 une leçon exécutable à la fois.
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 = {Introduction à ggplot2 en R : la grammaire des graphiques},
date = {2026-06-20},
url = {https://www.datanovia.com/learn/data-visualization/ggplot2/introduction-to-ggplot2},
langid = {fr}
}