在 sf 中将网格单元聚合到更大的分辨率

问题描述 投票:0回答:1

考虑一个网格单元,其中每个单元都是 10x10。

library(sf)
grid1 <- st_make_grid()

plot(grid1)

我想基于

grid1
创建另一个网格单元,其中每个单元格为30x30,由9个10x10相邻单元格组成。

关于如何做到这一点,我几乎没有线索,但我更喜欢

sf
解决方案。我尝试过使用
st_buffer
,但它会在每个单元格周围创建一个缓冲区。也许可以将相邻单元格分组并聚合它们,但我也不知道该怎么做。

r grid r-sf
1个回答
0
投票

使用

st_make_grid
cellsize
参数,可以根据现有网格制作网格并选择分辨率。使用 30 个像元大小确实会将 8 个相邻像元分组。

grid2 <- st_make_grid(grid1, cellsize = 30)

plot(grid2, lwd = 3)
plot(grid1, add = TRUE, col = NA)


请注意,这是有效的,因为网格是由正方形组成的;

st_make_grid
如果相邻元素不是正方形,则可能无法恢复它们。

© www.soinside.com 2019 - 2024. All rights reserved.