问题描述
我想使用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)
如何颠倒黑色的颜色以指示较高的值,而浅颜色的颜色指示较浅的值?
谢谢您的帮助。
解决方法
rasterTheme
是custom.theme.2
函数latticeExtra
的自定义,它使用`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)