Un guide complet des meilleurs thèmes ggplot2



Ce didacticiel fournit un guide complet des meilleurs thèmes ggplot2, notamment :

  • Comment modifier l’apparence des tracés à l’aide des thèmes ggplot2 intégrés.
  • Comment modifier l’apparence des tracés à l’aide de thèmes prédéfinis de la bibliothèque ggthemes .
  • Comment modifier des composants spécifiques du thème, notamment l’arrière-plan du panneau de tracé et le quadrillage.

Comment modifier l’apparence du tracé à l’aide des thèmes ggplot2 intégrés

Pour chacun des exemples suivants, nous utiliserons l’iris de l’ensemble de données R intégré :

#view first six rows of iris dataset
head(iris)

  Sepal.Length Sepal.Width Petal.Length Petal.Width Species
1          5.1         3.5          1.4         0.2  setosa
2          4.9         3.0          1.4         0.2  setosa
3          4.7         3.2          1.3         0.2  setosa
4          4.6         3.1          1.5         0.2  setosa
5          5.0         3.6          1.4         0.2  setosa
6          5.4         3.9          1.7         0.4  setosa

Tout d’abord, nous allons charger la bibliothèque ggplot2 et créer un nuage de points qui montre Sepal.Length sur l’axe des x et Sepal.Width sur l’axe des y, coloré en fonction de l’espèce :

#load ggplot2 library
library(ggplot2)

#create scatterplot
ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
  geom_point()

Ensuite, nous montrerons comment chacun des thèmes ggplot2 intégrés impacte l’apparence de l’intrigue.

thème_gris

Le thème par défaut, avec un fond gris et un quadrillage blanc.

ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
  geom_point() +
  theme_gray()

thème_bw

Un thème noir sur blanc.

ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
  geom_point() +
  theme_bw()

theme_linedraw

Un thème avec uniquement des lignes noires de différentes largeurs sur fond blanc.

ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
  geom_point() +
  theme_linedraw()

thème_light

Un thème similaire à theme_linedraw mais avec des lignes et des axes gris conçus pour attirer davantage l’attention sur les données.

ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
  geom_point() +
  theme_light()

thème_dark

Un thème similaire à theme_light , mais avec un fond sombre. Un thème utile pour faire ressortir les fines lignes colorées.

ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
  geom_point() +
  theme_dark()

thème_minimal

Un thème sans annotations d’arrière-plan.

ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
  geom_point() +
  theme_minimal()

thème_classique

Un thème sans quadrillage.

ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
  geom_point() +
  theme_classic()

thème_void

Un thème complètement vide.

ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
  geom_point() +
  theme_void()

Comment modifier l’apparence des tracés à l’aide de thèmes prédéfinis de la bibliothèque ggthemes

En plus d’utiliser les thèmes ggplot2 intégrés, nous pouvons utiliser les thèmes prédéfinis de la bibliothèque ggthemes pour modifier l’esthétique des tracés.

Tout d’abord, nous allons charger la bibliothèque ggthemes :

library(ggthemes)

Nous montrerons ensuite quelques exemples d’utilisation des thèmes prédéfinis pour modifier l’esthétique des intrigues :

thème_wsj

Un thème du Wall Street Journal.

ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
  geom_point() +
  theme_wsj()

theme_tufte

Un thème minimaliste inspiré des travaux du statisticien Edward Tufte.

ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
  geom_point() +
  theme_tufte()

thème_solarisé

Un thème qui utilise des couleurs basées sur la palette solarisée .

ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
  geom_point() +
  theme_solarized()

Notez que nous pouvons également utiliser l’argument light = FALSE pour utiliser un fond sombre sur le tracé :

ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
  geom_point() +
  theme_solarized(light = FALSE)

thème_gdocs

Un thème avec les valeurs par défaut de Google Docs Chart.

ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
  geom_point() +
  theme_gdocs()

theme_fivethirtyeight

Thème inspiré des intrigues de fivethirtyeight.com .

ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
  geom_point() +
  theme_fivethirtyeight()

theme_economist

Thème inspiré de The Economist.

ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
  geom_point() +
  theme_economist()

Comment modifier des composants spécifiques des tracés

Nous pouvons utiliser les fonctions theme() et element_rect() pour changer la couleur d’arrière-plan du panneau de tracé :

theme(panel.background = element_rect(fill, color, size))
  • fill : couleur de remplissage pour le rectangle
  • couleur : couleur de la bordure
  • taille : taille de la bordure

Nous pouvons également utiliser la fonction element_line() pour modifier la taille et l’apparence du quadrillage :

theme(panel.grid.major = element_line(color, size, linetype),
      panel.grid.minor = element_line(color, size, linetype))
  • couleur : couleur de la bordure
  • taille : taille de la bordure
  • type de ligne : type de ligne (« vierge », « solide », « tiret », « pointillé », « point tiret », « long tiret », « deux tirets »)

Le code suivant illustre comment supprimer les bordures du panneau de tracé et le quadrillage :

ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
  geom_point() +
  theme(panel.border = element_blank(),
  panel.grid.major = element_blank(),
  panel.grid.minor = element_blank())

Le code suivant illustre comment modifier l’arrière-plan du panneau de tracé et le quadrillage :

ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) +
  geom_point() +
  theme(
    panel.background = element_rect(fill = "powderblue",
    color = "powderblue",
    size = 0.5, linetype = "solid"),
    panel.grid.major = element_line(size = 0.5, linetype = 'solid', color = "white"),
    panel.grid.minor = element_line(size = 0.25, linetype = 'solid', color = "white")
  )

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *