我有一个想要扩展的 shapefile(基本上是添加一些 NA 行和列)。有没有这样的功能raster::extend?不幸的是,这只适用于raster对象。
我可以使用 裁剪它raster::crop,它有一个 方法SpatialPolygonsDataFrame,但我找不到任何可以扩展的东西。
我找到了一种方法来做到这一点!SpatialPolygons 的范围数据似乎存储在名为 bbox 的插槽中。在插槽内(您可以通过 访问my.polygon@bbox),您会发现一个简单的矩阵,如下所示:
min max
x -81 -80
y 11 12
Run Code Online (Sandbox Code Playgroud)
简单地用另一个看起来像您想要的矩阵替换该矩阵将改变您的 SpatialPolygons 的范围。您甚至可以使用其他多边形或栅格的范围来制作矩阵:
my.polygon@bbox <- as.matrix(extent(my.raster))
Run Code Online (Sandbox Code Playgroud)
它不像光栅的扩展那么整洁......但它的工作原理是一样的:)希望现在还为时不晚!