R 中的栅格面积计算问题

问题描述

我有一个包含以下信息的 RasterLayer

dimensions : 111,281,31191  (nrow,ncol,ncell)
resolution : 0.08333333,0.08333333  (x,y)
crs        : +proj=longlat +datum=wgs84 +no_defs +ellps=wgs84 +towgs84=0,0 

我的栅格的值是 1 和 6,我想要的是计算每个值所具有的以平方公里为单位的面积。

为此,我正在使用

tapply(area(my_raster),my_raster[],sum,na.rm=TRUE,weight=TRUE)

这给了我以下内容

1        6 
87299.97 19834.27

我有一些问题:

  1. 这些单位是平方米吗?

  2. 为什么当我尝试(手动)计算总面积(对于两个值)时,结果不同? (例如31191 (ncell) * (8000(m) * 8000(m)) = 1996224000000

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)