空间插值(Kriging),多边形而不是栅格输出

Spatial interpolation (Kriging), polygon instead of raster output

是否有一种(简单的)方法可以将 SpatialPixelsDataFrame(从 krige)转换为例如一个 SpatialPolygonsDataFrame(矢量图而不是像素图)。

最好设置值范围并将栅格插值到多边形或使用另一种生成 SpatialPolygonsDataFrame 的克里格方法。我期待一个简单的例子。

krige 示例:即书中 https://oscarperpinan.github.io/spacetime-vis/ 8.1.5 Spatial Interpolation, complete source https://github.com/oscarperpinan/spacetime-vis/blob/master/bubble.R

library(gstat)

airGrid <- spsample(NO2sp, type="regular", n=1e5)
gridded(airGrid) <- TRUE
airKrige <- krige(mean ~ 1, NO2sp, airGrid)

spplot(airKrige["var1.pred"],
       col.regions=colorRampPalette(airPal)) + ...

类似这样的方法可能有效:

library(raster)
x <- raster(airKrige["var1.pred"])
y <- cut(x, c(10,20,30,40,50,60,70))
z <- rasterToPolygons(y, dissolve=TRUE)
spplot(z)