Tutoriel · Débutant

Graphiques R

Définitions, code R reproductible et figures générées directement à partir de chaque exemple.

19 types de graphiquesR de base

Comment utiliser ce guide

Choisissez un graphique, comprenez ce qu’il communique, examinez le résultat et exécutez le code correspondant dans R ou RStudio. Chaque figure affichée a été produite à partir du code de son exemple.

Jeu de données utilisé dans les exemples

Accéder au jeu de données Iris dans R

Plusieurs tutoriels utilisent iris, un jeu de données inclus dans R. Il contient 150 observations de fleurs de trois espèces d’iris, avec les mesures de longueur et de largeur des sépales et des pétales. Aucun téléchargement de fichier ni installation de package n’est nécessaire.

Chargez les données, affichez les premières lignes, examinez leur structure et consultez la documentation officielle de R avec les commandes ci-contre.

RCharger et examiner Iris
data(iris)       # Charger le jeu de données intégré
head(iris)       # Afficher les six premières lignes
str(iris)        # Examiner les variables et leurs types
summary(iris)    # Afficher les statistiques descriptives
?iris            # Ouvrir la page d’aide de R
01

Diagramme en barres

Un diagramme en barres compare des valeurs numériques entre catégories. La longueur ou la hauteur de chaque barre représente la valeur associée à la catégorie.

Consulter le guide détaillé : diagramme en barres
Diagramme en barres généré dans R
Diagramme en barres généré avec le code R présenté ci-dessous.
RCode reproductible
values <- c(A = 18, B = 27, C = 22, D = 35, E = 29)
barplot(values, col = "#2563eb", border = NA,
        ylab = "Value", main = "Values by category")
02

Boîte à moustaches

Une boîte à moustaches résume une distribution numérique par sa médiane, ses quartiles, sa dispersion et ses valeurs potentiellement aberrantes, pour comparer les groupes de manière claire et synthétique.

Consulter le guide détaillé : boîte à moustaches
Boîte à moustaches généré dans R
Boîte à moustaches généré avec le code R présenté ci-dessous.
RCode reproductible
boxplot(Sepal.Length ~ Species, data = iris,
        col = c("#dbeafe", "#93c5fd", "#2563eb"),
        ylab = "Sepal length", main = "Distribution by species")
03

Courbe de densité

Une courbe de densité fournit une estimation lissée de la distribution d’une variable continue. Les pics indiquent les plages où se concentrent les observations.

Consulter le guide détaillé : courbe de densité
Courbe de densité généré dans R
Courbe de densité généré avec le code R présenté ci-dessous.
RCode reproductible
set.seed(123)
x <- rnorm(120)
d <- density(x)
plot(d, lwd = 3, col = "#2563eb", xlab = "x")
polygon(d, col = adjustcolor("#0891b2", 0.22), border = NA)
lines(d, lwd = 3, col = "#2563eb")
04

Carte thermique

Une carte thermique représente les valeurs d’une matrice par des couleurs. Elle permet de repérer les valeurs fortes ou faibles, les regroupements et les structures de corrélation.

Consulter le guide détaillé : carte thermique
Carte thermique généré dans R
Carte thermique généré avec le code R présenté ci-dessous.
RCode reproductible
m <- cor(iris[, 1:4])
heatmap(m, Rowv = NA, Colv = NA, scale = "none",
        col = colorRampPalette(c("#eff6ff", "#2563eb",
                                 "#172554"))(30))
05

Histogramme

Un histogramme répartit les observations continues en intervalles et utilise la hauteur des barres pour indiquer combien de valeurs appartiennent à chaque intervalle.

Consulter le guide détaillé : histogramme
Histogramme généré dans R
Histogramme généré avec le code R présenté ci-dessous.
RCode reproductible
set.seed(123)
x <- rnorm(120)
hist(x, breaks = 12, col = "#2563eb", border = "white",
     main = "Distribution of x", xlab = "x")
06

Graphique en courbes

Un graphique en courbes relie les valeurs dans l’ordre, généralement temporel, afin de révéler les tendances, les évolutions, les cycles et les points de retournement.

Consulter le guide détaillé : graphique en courbes
Graphique en courbes généré dans R
Graphique en courbes généré avec le code R présenté ci-dessous.
RCode reproductible
set.seed(123)
values <- cumsum(rnorm(24, 0.3, 1)) + 20
plot(seq_along(values), values, type = "o", pch = 16,
     lwd = 2.5, col = "#2563eb", xlab = "Period",
     ylab = "Value", main = "Values over time")
07

Matrice de nuages de points

Une matrice de nuages de points représente toutes les relations deux à deux entre plusieurs variables numériques.

Consulter le guide détaillé : matrice de nuages de points
Matrice de nuages de points généré dans R
Matrice de nuages de points généré avec le code R présenté ci-dessous.
RCode reproductible
pairs(iris[, 1:4], pch = 19,
      col = adjustcolor("#2563eb", 0.45),
      main = "Iris variables")
08

Graphique polygonal

Un graphique polygonal dessine une forme fermée à partir de coordonnées x et y ordonnées. Il permet de mettre en évidence des régions ou d’ajouter des zones remplies à un graphique existant.

Consulter le guide détaillé : graphique polygonal
Graphique polygonal généré dans R
Graphique polygonal généré avec le code R présenté ci-dessous.
RCode reproductible
plot(1, 1, type = "n", xlim = c(0, 2), ylim = c(0, 2),
     xlab = "X", ylab = "Y")
polygon(x = c(0.35, 1.45, 1.75, 1.2, 0.45),
        y = c(0.35, 0.45, 1.25, 1.75, 1.35),
        col = "#2563eb", border = "#172554", lwd = 2)
09

Diagramme quantile-quantile

Un diagramme quantile-quantile compare les quantiles observés à ceux d’une distribution de référence. Des points proches de la droite de référence indiquent des distributions de forme similaire.

Consulter le guide détaillé : diagramme quantile-quantile
Diagramme quantile-quantile généré dans R
Diagramme quantile-quantile généré avec le code R présenté ci-dessous.
RCode reproductible
set.seed(123)
x <- rnorm(120)
qqnorm(x, pch = 19, col = "#2563eb")
qqline(x, col = "#dc2626", lwd = 2)
10

Nuage de points

Un nuage de points place des observations numériques appariées sur deux axes pour révéler la direction, la forme, l’intensité et les points inhabituels de leur relation.

Consulter le guide détaillé : nuage de points
Nuage de points généré dans R
Nuage de points généré avec le code R présenté ci-dessous.
RCode reproductible
set.seed(123)
x <- rnorm(120)
y <- 0.7 * x + rnorm(120, sd = 0.65)
plot(x, y, pch = 19, col = adjustcolor("#2563eb", 0.6))
abline(lm(y ~ x), col = "#dc2626", lwd = 2.5)
11

Diagramme de Venn

Un diagramme de Venn utilise des formes superposées pour montrer les relations entre ensembles. Les intersections représentent les éléments communs à plusieurs ensembles.

Consulter le guide détaillé : diagramme de venn
Diagramme de Venn généré dans R
Diagramme de Venn généré avec le code R présenté ci-dessous.
RCode reproductible
plot.new()
plot.window(xlim = c(0, 10), ylim = c(0, 7), asp = 1)
symbols(c(4, 6), c(3.5, 3.5), circles = c(2.35, 2.35),
        inches = FALSE, add = TRUE,
        bg = c(adjustcolor("#2563eb", 0.35),
               adjustcolor("#0891b2", 0.35)))
text(5, 3.5, "A ∩ B", font = 2)
12

Graphique en aires

Un graphique en aires remplit l’espace entre une courbe et une ligne de base, mettant en évidence l’ampleur et l’évolution cumulée sur un axe ordonné.

Consulter le guide détaillé : graphique en aires
Graphique en aires généré dans R
Graphique en aires généré avec le code R présenté ci-dessous.
RCode reproductible
x <- 1:24
y <- cumsum(rnorm(24, .3, .5)) + 10
plot(x, y, type = "n")
polygon(c(x, rev(x)), c(y, rep(0, length(y))), col = "#bfdbfe", border = NA)
lines(x, y, col = "#2563eb", lwd = 3)
13

Diagramme à points

Un diagramme à points représente les valeurs par leur position sur une échelle commune, offrant une alternative compacte et précise aux barres.

Consulter le guide détaillé : diagramme à points
Diagramme à points généré dans R
Diagramme à points généré avec le code R présenté ci-dessous.
RCode reproductible
values <- c(A = 18, B = 27, C = 22, D = 35, E = 29)
dotchart(values, pch = 19, col = "#2563eb", xlab = "Value")
14

Diagramme en violon

Un diagramme en violon représente une estimation de densité symétrique pour comparer la forme complète, la dispersion et la concentration des distributions.

Consulter le guide détaillé : diagramme en violon
Diagramme en violon généré dans R
Diagramme en violon généré avec le code R présenté ci-dessous.
RCode reproductible
library(ggplot2)
ggplot(iris, aes(Species, Sepal.Length, fill = Species)) +
  geom_violin(show.legend = FALSE) + theme_minimal()
15

Diagramme en sucettes

Un diagramme en sucettes relie la ligne de base de chaque catégorie à un point représentant sa valeur, pour un classement léger et lisible.

Consulter le guide détaillé : diagramme en sucettes
Diagramme en sucettes généré dans R
Diagramme en sucettes généré avec le code R présenté ci-dessous.
RCode reproductible
v <- c(18, 27, 22, 35, 29)
plot(v, type = "n", ylim = c(0, 40))
segments(seq_along(v), 0, seq_along(v), v, col = "#93c5fd", lwd = 3)
points(v, pch = 19, col = "#2563eb")
16

Diagrammes circulaire et en anneau

Les diagrammes circulaires et en anneau divisent un cercle en secteurs angulaires pour représenter simplement la composition d’un ensemble.

Consulter le guide détaillé : diagrammes circulaire et en anneau
Diagrammes circulaire et en anneau généré dans R
Diagrammes circulaire et en anneau généré avec le code R présenté ci-dessous.
RCode reproductible
values <- c(A = 35, B = 25, C = 22, D = 18)
pie(values, col = hcl.colors(4, "Blues 3"), main = "Composition")
17

Diagramme en mosaïque

Un diagramme en mosaïque divise un rectangle selon les fréquences d’un tableau de contingence pour révéler les associations entre variables catégorielles.

Consulter le guide détaillé : diagramme en mosaïque
Diagramme en mosaïque généré dans R
Diagramme en mosaïque généré avec le code R présenté ci-dessous.
RCode reproductible
tab <- xtabs(Freq ~ Class + Survived, data = as.data.frame(Titanic))
mosaicplot(tab, color = c("#bfdbfe", "#2563eb"), main = "Class and survival")
18

Graphique de courbes de niveau

Un graphique de courbes de niveau relie les positions ayant une même valeur de surface, traduisant une structure tridimensionnelle en deux dimensions.

Consulter le guide détaillé : graphique de courbes de niveau
Graphique de courbes de niveau généré dans R
Graphique de courbes de niveau généré avec le code R présenté ci-dessous.
RCode reproductible
x <- seq(-3, 3, length = 60)
y <- x
z <- outer(x, y, function(a, b) exp(-(a^2 + b^2) / 2))
contour(x, y, z, col = "#2563eb", lwd = 2)
19

Diagramme radar

Un diagramme radar place des indicateurs sur des axes radiaux et relie leurs valeurs pour former un profil multivarié.

Consulter le guide détaillé : diagramme radar
Diagramme radar généré dans R
Diagramme radar généré avec le code R présenté ci-dessous.
RCode reproductible
values <- c(4, 7, 6, 8, 5)
angles <- seq(0, 2*pi, length.out = 6)
r <- c(values, values[1])
plot(cos(angles)*r, sin(angles)*r, type = "l", asp = 1, axes = FALSE)