29 votos

Leyenda raster en R: ¿cómo colorear valores específicos?

Tengo un modelo de elevación trazado en R

r <- raster("example.dem")
plot(r, col = topo.colors(20))

Elevation plot

Algunos de los valores están por debajo del nivel del mar (0), y me gustaría que aparecieran en rojo. Cómo puedo asignar rangos específicos a colores específicos en plot()?

8voto

Adam Tuttle Puntos 7982

He aquí un ejemplo muy sencillo

library(raster)
data(volcano)
volcanoR <- raster(volcano)

#making colors below 100 red and above 180 blue in this example

breakpoints <- c(94,100,120,140,160,180,195)
colors <- c("red","white","white","white","white","blue")
plot(volcanoR,breaks=breakpoints,col=colors)

enter image description here

Sólo tiene que pasar al gráfico un vector de puntos de ruptura y un vector de colores que coincidan con los puntos de ruptura. Echa un vistazo a la RColorbrewer paquete para algunas rampas de color muy bonito construido. Compruebe también el classInt para crear los breakpoints.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X