28 Thèmes et Palettes
Ce chapitre a été réalisé dans le cadre d’une collaboration communautaire crée par ar3879
*Cette page est un travail en cours. Nous apprécions tout commentaire ou feedback. Si vous souhaitez améliorer cette page, vous pouvez participer à notre repo.
28.1 Vue d’ensemble
Nos graphiques doivent non seulement être informatifs mais aussi esthétiques pour obtenir l’attention de notre public. Les thèmes et les couleurs utilisées ont un rôle important à jouer quant à l’esthétique des graphiques.
Cette section explique comment utiliser différentes palettes et thèmes selon le contexte et comment rendre nos graphiques cools.
28.2 Thèmes ggplot2
ggplot2
offre un ensemble de thème que nous pouvons choisir pour nos graphiques. Vous trouverez ci-dessous une brève description de chacun:
theme_gray()
: thème signature deggplot2
theme_bw()
: thème noir et blanc deggplot2
theme_linedraw()
: lignes noires sur fond blanc uniquementtheme_light()
: similaire àlinedraw()
mais avec des lignes grises égalementtheme_dark()
: lignes sur un fond foncé plutôt que clairtheme_minimal()
: pas d’annotations sur le fond du graphiquetheme_classic()
: thème sans grillagetheme_void()
: thème vide sans aucun élément
28.2.1 exemples de thèmes ggplot
q <- ggplot(subset, aes(x = clarity, y = carat, color = cut)) +
geom_point(size = 2.5,alpha = 0.75)
q + theme_minimal()
Il y a plusieurs autres packages disponibles qui permettent de modifier les thèmes et couleurs de plusieurs façons différentes. Nous discuterons 4 d’entre-eux.
- RColorBrewer
- ggthemes
- ggthemr
- ggsci
28.3 RColorBrewer
Souvent, on cherche des couleurs qui rendront notre graphique clair et cool.
RColorBrewer offre une multitude de palettes que nous pouvons utiliser en fonction du contexte de notre graphique. Il y a trois catégories de palettes: Sequential, Diverging et Qualitative.
q <- ggplot(subset, aes(x = clarity, y = carat, color = cut)) +
geom_point(size = 2.5, alpha = 0.75)
- Sequential Palette: Cette palette représente la nuance de la couleur, de clair à foncé. On l’utilise en général pour représenter un interval de données pour lequel les valeurs basses seront représentées par une couleur claire et les valeurs élevées par une couleur foncée. On citera comme exemples: Blues, BuPu, YlGn, Reds, OrRd.
- Diverging Palette: Cette palette présente trois couleurs ou plus qui divergent totalement (par exemple du bleu, du blanc et du rouge) pour permettre d’établir des contrastes entre données plus facilement. On citera par exemple:Spectral, RdGy, PuOr
- Qualitative Palette: Cette palette est généralement utilisée lorsque l’on veut souligner les différences entre classes de variables (variables catégorielles). On citera par exemple: set1, set2, set3, pastel1, pastel2 , dark2.
28.4 ggthemes
ggthemes élargit le choix de geoms, scales et thèmes de ggplot2
. Certains sont vraiment très sympas! On peut changer le thème et la couleur du graphique en fonction du contexte.
g1 <- ggplot(subset, aes(x = clarity, y = carat, color = cut)) +
geom_point(size = 2.5,alpha = 0.75)
28.4.1 exemples de ggthemes
Si on veut utiliser ces couleurs dans nos graphiques mais qu’il n’est pas possible d’utiliser ggthemes
, on peut utiliser le package scales
pour trouver quelles couleurs ont été utilisées dans une palette donnée. Par exemple:
28.5 ggthemr
ggthemr est utilisé pour déterminer le thème des graphiques ggplot. Il y a 17 thèmes différents pour changer la façon de présenter un graphique ggplot. L’utilisation de ggthemr est cependant différente des autres packages: on décide du thème avant de l’utiliser.
28.5.1 exemples ggthemr
## Warning: New theme missing the following elements: axis.ticks.length.x,
## axis.ticks.length.x.top, axis.ticks.length.x.bottom, axis.ticks.length.y,
## axis.ticks.length.y.left, axis.ticks.length.y.right, plot.title.position,
## plot.caption.position
## Warning: New theme missing the following elements: axis.ticks.length.x,
## axis.ticks.length.x.top, axis.ticks.length.x.bottom, axis.ticks.length.y,
## axis.ticks.length.y.left, axis.ticks.length.y.right, plot.title.position,
## plot.caption.position
On peut également définir plus de paramètres pour changer les thèmes:
## Warning: New theme missing the following elements: axis.ticks.length.x,
## axis.ticks.length.x.top, axis.ticks.length.x.bottom, axis.ticks.length.y,
## axis.ticks.length.y.left, axis.ticks.length.y.right, plot.title.position,
## plot.caption.position
28.6 ggsci
ggsci offers a number of palettes inspired by colors used in scientific journals, science fiction movies, and TV shows. For continous data, scale_fill_material(colname)
is used, and for discrete data, scale_color_palname()
or scale_fill_palname()
are used.
ggsci offrent un nombre de palettes inspirées de couleurs utilisées dans les journaux scientifiques, films de science fiction et séries télévisées. Pour des données continues, on utilise scale_fill_material()
et pour des données discères, scale_color_palname()
ou scale_fill_palname()
sont utilisées.
28.6.1 ggsci pour données discrètes
28.6.2 ggsci pour données continues
ggplot(diamonds, aes(carat, price)) +
geom_hex(bins = 20, color = "red") +
scale_fill_material("orange")
On peut aussi retrouver la couleur utilisée afin de la réutiliser dans d’autres graphiques créés avec base R:
28.7 Ressources externes
- RColorBrewer: Setting up Color Palettes in R
- ggthemes: Github page containing more examples
- ggthemr: Github Repository of the package
- ggsci: Scientific Journal and Sci-Fi Themed Color Palettes for ggplot2
with