Как изменить цвет по умолчанию RasterVis (Levelplot)?

Я хочу использовать цвет уровня по умолчанию, но в обратном порядке. Я знаю, как инвертировать пользовательские цвета, но не могу сделать это для цвета по умолчанию в rasterVis.rasterVis

library(raster)
library(rasterVis)
##Solar irradiation data from CMSAF 
old <- setwd(tempdir())
download.file('https://raw.github.com/oscarperpinan/spacetime-vis/master/data/SISmm2008_CMSAF.zip',
              'SISmm2008_CMSAF.zip', method='wget')
unzip('SISmm2008_CMSAF.zip')

listFich <- dir(pattern='\\.nc')
stackSIS <- stack(listFich)
stackSIS <- stackSIS * 24 ##from irradiance (W/m2) to irradiation Wh/m2

idx <- seq(as.Date('2008-01-15'), as.Date('2008-12-15'), 'month')

SISmm <- setZ(stackSIS, idx)
names(SISmm) <- month.abb

setwd(old)
levelplot(SISmm)

Как поменять местами черный цвет, указывающий на более высокие значения, и светлые цвета, указывающий на более светлые значения?

Спасибо за любую помощь.


person Lalantra    schedule 14.10.2020    source источник


Ответы (1)


rasterTheme — это настройка функции custom.theme.2 из latticeExtra с использованием палитры magma пакета `viridisLite:

     rasterTheme(region = magma(10),
             pch=19, cex=0.7, 
             strip.background = list(col = 'transparent'),
             strip.shingle = list(col = 'transparent'),
             strip.border = list(col = 'transparent'),
             add.lines = list(lwd = .4),
             ...)

Следовательно, вы должны использовать аргумент region с перевернутой палитрой магмы:

library(rasterVis)
library(viridisLite)

f <- system.file("external/test.grd", package="raster")
r <- raster(f)

revMagma <- rasterTheme(region = rev(magma(10)))
levelplot(r, par.settings = revMagma)

revMagma

person Oscar Perpiñán    schedule 14.10.2020