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"))
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!
Recommended for You!
Click to follow us on Facebook:
Comment this article by clicking on "Discussion" button (top-right position of this page)