首页 > 解决方案 > 与对角权重矩阵一起使用时的焦点最小值问题

问题描述

我正在尝试使用具有对角矩阵权重的移动窗口来计算单元格的最小值raster::focal。但是,我没有得到预期的结果。请看下面的例子

r <- raster(resolution=5, xmn=0, xmx=200, ymn=0, ymx=300)
values(r) <- 1:ncell(r)
plot(r)

在此处输入图像描述

使用列矩阵权重和 fun = minimum 生成焦点栅格

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 = minimum 生成焦点栅格时,它会给出一个零矩阵

r_min_d <- focal(r, diag(1, nrow =5, ncol = 5), fun = min, na.rm = T)
plot(r_min_d)

在此处输入图像描述

我做错了什么以及如何正确地做到这一点?

标签: rstatisticsrasterminimum

解决方案


推荐阅读