我有一个栅格,我想将其值更改为每公顷像素值,其中面积来自像素的大小。因此,如果一个像素是 10 公顷,其当前值为 100 个任意单位,那么现在它将是 10 个任意单位/公顷。
栅格示例:
r <- rast(nrows=18, ncols=36)
v <- 1:ncell(r)
v[200:400] <- NA
values(r) <- v
此函数应采用栅格并乘以 1/ha。
px2ha <- function(raster) {
raster * 10000/prod(res(raster))
}
那么像这样使用 cellSize 怎么样?
r2/cellSize(r2, unit = 'ha')
我没有得到相同的答案。
r2 = project(x = r, y = 'epsg:2950') # Put raster in meters
plot((r2))
plot(px2ha(r2))
plot(r2/cellSize(r2, unit = 'ha'))
可以使用 cellSize 获取每面积(公顷)的像素值吗?