如何设置spplot的默认主题?

时间:2016-01-11 10:11:53

标签: r plot gis lattice sp

我们说,我有一些空间数据,我想使用 sp 包中的.directive('ngIncludeTemplate', function() { return { templateUrl: function(elem, attrs) { return attrs.ngIncludeTemplate; }, restrict: 'A', scope: { 'ngIncludeVariables': '&' }, link: function(scope, elem, attrs) { var vars = scope.ngIncludeVariables(); Object.keys(vars).forEach(function(key) { scope[key] = vars[key]; }); } } }) 函数来绘制它:

spplot

enter image description here

只有一个地块可以轻松更改主题,例如col.regions:

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

enter image description here

但是,如果我想更改所有情节的col.regions怎么办?我尝试了一些功能,例如:

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

但似乎没有任何效果。所以我的问题是 - 如何正确设置spplot的默认主题?

1 个答案:

答案 0 :(得分:4)

请查看以下代码,以便手动重新定义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

任何后续创建的“spplot”定制的配色方案都会持续存在。对象,例如

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

mapview