Estoy usando la levelplotfunción del rasterVispaquete impresionante para crear un mapa cuyos valores divergen alrededor de cero. Estoy trazando un archivo ráster con una paleta de rojo a azul, pero estoy tratando de asignar valores grises a cero en el mapa.
Específicamente, quiero reproducir los colores de esta figura:
Observe que cuando se usa una escala de rojo a azul, pero los valores cero se han coloreado con gris.
Actualmente, mis mapas se ven así:
Y este es el código para reproducirlo (archivo disponible en https://www.dropbox.com/s/cypfdu1eaz2fuok/r.annual.tif?dl=0 ):
# Load required packages
library(rasterVis)
# open file
r.annual <- raster("Downloads/r.annual.tif")
# Set color palette
myTheme=rasterTheme(region=brewer.pal('RdBu', n=11))
# Plot
levelplot(annual.mask, par.settings=myTheme, margin=F)
¿Cómo puedo asignar gris a todos los valores cero en mi mapa de arriba?
fuente



myTheme$panel.background$col = 'grey70'después de sumyThemelínea y trazarla para ver el resultado. Aparentemente ahora necesito deshacerme de las áreas excesivas de NA alrededor de la imagen.0valor es diferente delNAvalor. También tienen diferentes significados. Puede asignar el mismo color a ambos, pero creo que no es apropiado. Si desea tener un ráster de precipitación que se parezca a la cifra que publicó (más datos), una sugerencia puede ser tratar de interpolar sus datos siguiendo un modelo de predicción apropiado.