我正试图使用具有对角矩阵权重的移动窗口来计算单元格的最小值
raster::focal
。但是,我没有得到预期的结果。请参阅下面的示例
r <- raster(resolution=5, xmn=0, xmx=200, ymn=0, ymx=300)
values(r) <- 1:ncell(r)
plot(r)
使用列矩阵权重和fun=最小值生成焦点光栅
r_min_c <- focal(r, matrix(1, nrow = 5, ncol = 1), fun = min, na.rm = T)
plot(r_min_c)
工作正常!
使用对角矩阵权重和fun=最大值生成焦光栅
r_max_d <- focal(r, diag(1, nrow =5, ncol = 5), fun = max, na.rm = T)
plot(r_max_d)
工作正常!
但是,当试图使用对角矩阵权重和fun=最小值生成焦点光栅时,会给出零矩阵
r_min_d <- focal(r, diag(1, nrow =5, ncol = 5), fun = min, na.rm = T)
plot(r_min_d)
我做错了什么?如何正确地做到这一点?