Chapitre 9 Changer la forme, la taille et la transparence

Maintenant, regardons plus loin que la couleur ! Si nous voulons changer la forme de nos points de données, nous pouvons commencer par utiliser l’argument shape dans la couche aes() comme nous l’avons fait avec la couleur. Cela regroupera nos points de données par la variable que nous fournissons en utilisant différentes formes (ici nous utilisons la variable espèce).

Si nous voulons ajuster la taille des points de données, nous pouvons utiliser l’argument size au même endroit. Nous pouvons également utiliser l’argument alpha si nous voulons jouer avec la transparence. Les deux sont de bonnes options pour les données continues.

# changer la forme des points
ggplot(data = penguins) +
  geom_point(aes(x = bill_length_mm,
                 y = bill_depth_mm,
                 shape = species)) + # regrouper les données par formes
  labs(title = "Formes pour des groupes")

# size and alpha for continuous values
ggplot(data = penguins) +
  geom_point(aes(x = bill_length_mm,
                 y = bill_depth_mm,
                 size = body_mass_g, # regrouper les données par taille des points
                 alpha = flipper_length_mm)) + # code de transparence par longueur de nageoire
  labs(title = "Taille et transparence pour des variables continues")

Notez que le fait de définir simultanément de nombreuses variables pour les repères visuels tels que la couleur, la forme, la taille et l’alpha a tendance à être excessif pour le lecteur. L’ajout de quatre niveaux de complexité à la représentation en 2D des points peut être trop important pour être bien interprété. Il est préférable de choisir les indices visuels et les variables clés pour le message souhaité plutôt que de surcharger un graphique avec toutes les possibilités de la fonction aes().

9.1 Défi 2

  • Créer un graphique informatif à partir de jeu de données disponible de R, comme mtcars, CO2 ou msleep.

  • Utiliser les esthétiques appropriés pour différents types de données

Données x y Esthétiques
mtcars wt mpg disp et hp
CO2 conc uptake Treatment et Type
msleep log10(bodywt) awake vore et conservation
ToothGrowth dose len supp

Faites attention aux types de données !


9.1.1 Défi 2: Solution (mtcars)

There are multiple ways to respond to this challenge. Here is one example using the mtcars dataset:

Données x y Esthétiques
mtcars wt mpg disp et hp
# Une de plusieurs solutions: mtcars
data(mtcars)
ggplot(data = mtcars) + geom_point(aes(x = wt, y = mpg, colour = disp,
    alpha = hp))

Pourriez-vous utiliser size au lieu de alpha? Et shape?

9.1.2 Défi 2: Solution (CO2)

Voici un autre exemple avec le jeu de donnéesCO2:

Données x y Esthétiques
CO2 conc uptake Treatment et Type
# Another possible solution
data(CO2)
ggplot(data = CO2) + geom_point(aes(x = conc, y = uptake, colour = Treatment,
    shape = Type))

9.1.3 Défi 2: Solution (msleep)

Voici un autre exemple avec le jeu de données msleep:

Données x y Esthétiques
msleep log10(bodywt) awake vore et conservation
# Une autre solution
data(msleep)
ggplot(data = msleep) + geom_point(aes(x = log10(bodywt), y = awake,
    colour = vore, shape = conservation))

9.1.4 Défi 2: Solution (ToothGrowth)

Voici un dernier exemple avec le jeu de données ToothGrowth:

Données x y Esthétiques
ToothGrowth dose len supp
data(ToothGrowth)
ggplot(ToothGrowth, aes(x = dose, y = len, color = supp)) + geom_point() +
    geom_smooth(method = lm, formula = "y ~ x")