如何更改SpatialPolygons对象的多边形填充颜色和边框颜色?


25

我有要绘制的SpatialPolygons或SpatialPolygonsDataFrames。如何使用R中的三种绘图系统(基本图形,点阵图形和ggplot2)更改颜色?

示例数据:

library(sp)
Srs1 = Polygons(list(Polygon(cbind(c(2,4,4,1,2),c(2,3,5,4,2)))), "s1")
Srs2 = Polygons(list(Polygon(cbind(c(5,4,2,5),c(2,3,2,2)))), "s2")

SpDF <- SpatialPolygonsDataFrame( SpatialPolygons(list(Srs1,Srs2)), 
            data.frame( z=1:2, row.names=c("s1","s2") ) )
spplot(SpDF, zcol="z")

测试图

Answers:


33

基本图形(plot

对于基础图形,请col=设置填充并border=设置边框颜色。

plot(SpDF, col="red",border="green")

如果您想要一个Choropleth贴图,请将其设置col=为颜色的矢量,每个多边形的数据值各一个。

基本图形

格子图形(spplot

与基础图形不同,col=点阵图形的选项控制边框颜色。对于无边框,请设置col=NAcol="transparent"

spplot(SpDF, zcol="z", col=NA)

无边界

对于多边形填充,设置col.regions为标准的R颜色方案(grayrainbow.colorstopo.colors等等):

spplot(SpDF, zcol="z", col.regions=gray(seq(0,1,.01)))

校区

ggplot2

与ggplot2一样,您可以指定级别并选择配色方案。但是,您可以覆盖整个图的方案。某些时候要遵循的细节。


好问题/答案。也许您想添加有关设置背景色的信息。要设置背景色spplot,请使用par.settings = list(panel.background=list(col="lightblue"))
nograpes
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.