Как установить тему по умолчанию для spplot?

Допустим, у меня есть некоторые пространственные данные, и я хочу построить их с помощью функции spplot из пакета sp:

library('sp')
library('lattice')
demo(meuse, ask = FALSE, echo = FALSE)
spplot(meuse.grid[,'dist'])

введите здесь описание изображения

Легко изменить тему, например col.regions, только для одного сюжета:

spplot(meuse.grid[,'dist'], col.regions=rainbow(100))

введите здесь описание изображения

Однако что, если я хочу изменить col.regions для всех своих графиков? Я пробовал несколько функций, например:

trellis.par.set(sp.theme(set = FALSE, regions = list(col = rainbow(100)))) #1
trellis.par.set(regions = list(col = rainbow(100))) #2
lattice.options(default.theme = sp.theme(set = FALSE, regions = list(col = rainbow(100)))) #3

Но ничего не работает. Итак, мой вопрос: как правильно установить тему по умолчанию для spplot?


person Jot eN    schedule 11.01.2016    source источник


Ответы (1)


Взгляните на следующий код, чтобы вручную переопределить цветовую схему по умолчанию для spplot (см. также ?spplot, где set_col_regions описано далее).

## re-define default color scheme
old_theme <- get_col_regions()
new_theme <- set_col_regions(rainbow(100))

## sample data
data("meuse.grid")
coordinates(meuse.grid) <- ~x+y
proj4string(meuse.grid) <- CRS("+init=epsg:28992")
gridded(meuse.grid) <- TRUE

## display data with c
spplot(meuse.grid, zcol = "dist")                

спплот

Индивидуальная цветовая схема сохраняется для любого впоследствии созданного объекта «spplot», например.

library(mapview)
spplot(poppendorf, "B007n")

карта

person fdetsch    schedule 11.01.2016