Couleurs dans R
Dans R, les couleurs peuvent être spécifiées soit par le nom (ex, col = “red”) ou par le code hexadécimal (ex, col = “#FFCC00”). Vous pouvez également utiliser des couleurs provenant du package RColorBrewer.
Les noms de couleurs reconnus par R
Nous allons utiliser la fonction R personnalisée suivante pour générer un graphique des noms de couleurs disponibles dans R :
# Génerer un graphique des noms de couleurs
#++++++++++++++++++++++++++++++++++++++++++++
# cl : un vecteur de couleurs à dessiner
# bg: couleur de fond du graphique
# rot: Angle de rotation du text
# utilisation=showCols(bg="gray33")
showCols <- function(cl=colors(), bg = "grey",
cex = 0.75, rot = 30) {
m <- ceiling(sqrt(n <-length(cl)))
length(cl) <- m*m; cm <- matrix(cl, m)
require("grid")
grid.newpage(); vp <- viewport(w = .92, h = .92)
grid.rect(gp=gpar(fill=bg))
grid.text(cm, x = col(cm)/m, y = rev(row(cm))/m, rot = rot,
vp=vp, gp=gpar(cex = cex, col = cm))
}
Les noms des 60 premieres couleurs sont montrés ci-dessous :
# Noms des 60 premieres couleurs
showCols(bg="gray20",cl=colors()[1:60], rot=30, cex=0.9)
# Barplot en utilisant le nom des couleurs
barplot(c(2,5), col=c("chartreuse", "blue4"))
Pour afficher la totalité des noms de couleurs reconnus par R (n = 657), utiliser le code R :
showCols(cl= colors(), bg="gray33", rot=30, cex=0.75)
Spécification des couleurs par le code hexadécimal
Les couleurs peuvent être spécifiées en utilisant le code hexadécimal, tel que “#FFC00”
(Source: http://www.visibone.com)
# Barplot en utilisant le code héxadécimal
barplot(c(2,5), col=c("#009999", "#0000FF"))
Utilisation des palettes de couleurs RColorBrewer
Vous devez installer le package RColorBrewer comme suit :
install.packages("RColorBrewer")
Le package RColorBrewer permet de créer de belles palettes de couleurs.
L’ensemble des palettes de couleurs associées à RColorBrewer peuvent être dessiné en utilisant la fonction R display.brewer.all() comme suit:
library("RColorBrewer")
display.brewer.all()
Il y a 3 types de palettes dans RColorBrewer: séquentielle, divergente et qualitative.
- Les palettes sequentielles sont adaptées pour des données ordonnées qui varient d’une valeur faible à une valeur forte (gradient). Les noms des palettes sont : Blues, BuGn, BuPu, GnBu, Greens, Greys, Oranges, OrRd, PuBu, PuBuGn, PuRd, Purples, RdPu, Reds, YlGn, YlGnBu YlOrBr, YlOrRd.
- Les palettes divergentes accordent la même importance aux différentes valeurs des données. Les noms des palettes sont : BrBG, PiYG, PRGn, PuOr, RdBu, RdGy, RdYlBu, RdYlGn, Spectral
- Les palettes qualitatives sont adaptées pour représenter des données catégorielles ou nominales. Les palettes sont : Accent, Dark2, Paired, Pastel1, Pastel2, Set1, Set2, Set3
Vous pouvez également visualiser une seule palette en spécifiant son nom :
# Visualiser une palette en spécifiant son nom
display.brewer.pal(n = 8, name = 'RdBu')
# Couleurs hexadécimales de la palette
brewer.pal(n = 8, name = "RdBu")
## [1] "#B2182B" "#D6604D" "#F4A582" "#FDDBC7" "#D1E5F0" "#92C5DE" "#4393C3" "#2166AC"
# Barplot en utilisant RColorBrewer
barplot(c(2,5,7), col=brewer.pal(n = 3, name = "RdBu"))
Utilisation des palettes de couleurs Wes Anderson
Ces palettes de couleurs peuvent être installées et chargées comme suit :
# Installer
install.packages("wesanderson")
# Charger
library(wesanderson)
Les palettes disponibles sont :
Utiliser les palettes comme suit :
# Bar plot simple
barplot(c(2,5,7), col=wes.palette(n=3, name="GrandBudapest"))
library(ggplot2)
ggplot(iris, aes(Sepal.Length, Sepal.Width, color = Species)) +
geom_point(size = 2) +
scale_color_manual(values = wes.palette(n=3, name="GrandBudapest"))
Créer un vecteur de n couleurs contiguës
Vous pouvez également générer un vecteur de n couleurs contiguës en utilisant les fonctions : rainbow(n), heat.colors(n), terrain.colors(n), topo.colors(n) et cm.colors(n).
# Utilisation de rainbow
barplot(1:5, col=rainbow(5))
# Utilisation de heat.colors
barplot(1:5, col=heat.colors(5))
# Utilisation terrain.colors
barplot(1:5, col=terrain.colors(5))
# Utilisation de topo.colors
barplot(1:5, col=topo.colors(5))
# Utilisation de cm.colors
barplot(1:5, col=cm.colors(5))
Infos
Cette analyse a été réalisée avec R (ver. 3.1.0).
Show me some love with the like buttons below... Thank you and please don't forget to share and comment below!!
Montrez-moi un peu d'amour avec les like ci-dessous ... Merci et n'oubliez pas, s'il vous plaît, de partager et de commenter ci-dessous!