【发布时间】:2015-06-17 09:50:43
【问题描述】:
我正在尝试使用 sp 包中的函数 spplot 绘制多边形数据,但我的数据框中有一些缺失值 (NA)。当我绘制此数据框时,缺失值具有透明颜色。我想用黑色绘制它们。我该怎么做?
library(sp)
spplot(TestData,12)
这是我的TestData object
【问题讨论】:
标签: r
我正在尝试使用 sp 包中的函数 spplot 绘制多边形数据,但我的数据框中有一些缺失值 (NA)。当我绘制此数据框时,缺失值具有透明颜色。我想用黑色绘制它们。我该怎么做?
library(sp)
spplot(TestData,12)
这是我的TestData object
【问题讨论】:
标签: r
实现此目的的一种方法是使用latticeExtra::layer_ 在标准spplot 下方以您喜欢的NA 颜色绘制所有多边形。
library(latticeExtra)
spplot(TestData, 12, col.regions=heat.colors(101), at=seq(0, 4, length=100)) +
layer_(sp.polygons(TestData, fill='black'))
同样,如果您有栅格数据,您可以对layer_ 和grid.rect 执行相同操作:
library(raster)
library(latticeExtra)
r <- raster(matrix(runif(100), ncol=10))
r[sample(100, 10)] <- NA
spplot(r, col.regions=grey.colors, at=seq(0, 1, length=100)) +
layer_(grid.rect(0, 0, 2, 2, gp=gpar(fill = 'lightblue')))
【讨论】: