jueves, 19 de diciembre de 2019

Tabla de colores en R

Si os pasa como a mí, que estoy representando datos en gráficos continuamente, tengo que estar mirando constantemente los colores de R para elegir los que más convengan en cada momento. Últimamente los cuadritos con los colores que tenía localizados en internet han desaparecido, y por eso me he tenido que fabricar uno con unas pocas líneas de código:

dev.new(width=9,height=9)
plot(0,0,type="n",xlim=c(0,23),ylim=c(1,26),xlab="",ylab="",xaxt="n",yaxt="n",
  main="colors() in R", bty="n")
wh<-c(24,26:31,73,131:137,153:183,261:288,376,461,477,490:491,551,556,566:567)
  #Vector con los colores oscuros, para poner los números en blanco
for(i in 1:length(colors())-1){
  fcol<-"black"
  y<-27-trunc(i/25,0)
  x<-(i%%25)-1
  segments(x,y-0.5,x+1,y-0.5,lend=3,lwd=25,colors()[i+1])
  if((i+1) %in% wh){fcol<-"white"}
  text(x+0.5,y-0.5,i+1,col=fcol)
}
Si lo queréis en pdf, el código es prácticamente igual:

pdf("coloresR.pdf",width=9,height=9)
plot(0,0,type="n",xlim=c(0,23),ylim=c(1,26),xlab="",ylab="",xaxt="n",yaxt="n",
  main="colors() in R", bty="n")
wh<-c(24,26:31,73,131:137,153:183,261:288,376,461,477,490:491,551,556,566:567)
for(i in 1:length(colors())-1){
  fcol<-"black"
  y<-27-trunc(i/25,0)
  x<-(i%%25)-1
  segments(x,y-0.5,x+1,y-0.5,lend=3,lwd=25,colors()[i+1])
  if((i+1) %in% wh){fcol<-"white"}
  text(x+0.5,y-0.5,i+1,col=fcol,cex=0.9)
}
dev.off()
El resultado es este (click para ampliar):
Yo he metido el primer código en una función y la he puesto en mi librería de funciones de análisis, así sólo tengo que escribir su nombre para echar un vistazo a los colores.

No hay comentarios :

Publicar un comentario