1

我想将光栅层精确地剪辑到 R 中 shpfile 的轮廓。

  crop_rast      = crop (raster , extent(vector))                 # Crop
  mask_rast      = mask (crop_rast, vector)                       # Mask

这行不通。

4

1 回答 1

2

这可能对您不起作用的一个原因可能是矢量和栅格数据具有不同的坐标参考系。

确实适用于 therasterterrapackage。这里用 说明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)
于 2021-03-04T00:48:47.093 回答