我想将光栅层精确地剪辑到 R 中 shpfile 的轮廓。
crop_rast = crop (raster , extent(vector)) # Crop
mask_rast = mask (crop_rast, vector) # Mask
这行不通。
这可能对您不起作用的一个原因可能是矢量和栅格数据具有不同的坐标参考系。
它确实适用于 theraster或terrapackage。这里用 说明terra:
library(terra)
v <- vect(system.file("ex/lux.shp", package="terra"))
r <- rast(system.file("ex/elev.tif", package="terra"))
v <- v[3,]
plot(r)
lines(v, lwd=2)
x <- crop(r, ext(v) + .01)
y <- mask(x, v)
plot(y)
lines(v)