繁体   English   中英

合并不同范围的栅格,对R中的重叠像元值求和

[英]Merge rasters of different extents, sum overlapping cell values in R

我正在尝试合并程度不同的栅格化折线,以便创建一个指示像元重叠次数的单一曲面。

由于计算限制(鉴于我的研究区域的大小),我无法为每个栅格使用extend然后stack (总数= 67)。

我遇到了R中的merge功能,这使我可以将栅格合并到一个表面中。 但是,似乎不喜欢我插入一个函数来计算重叠单元的总和。

也许我缺少明显的东西,或者这是merge功能的限制。 任何有关如何生成此输出,避免extendstack建议,将不胜感激!

码:

# read in specific route rasters
raster_list <- list.files('Data/Raw/tracks/rasterized/', full.names = TRUE)

for(i in 1:length(raster_list)){

   # get file name
   file_name <- raster_list[i]

   # read raster in
   road_rast_i <- raster(file_name)

   if(i == 1){

   combined_raster <- road_rast_i

   } else {

   # merge rasters and calc overlap
   combined_raster <- merge(combined_raster, road_rast_i, 
                            fun = function(x, y){sum(x@data@values, y@data@values)})
  }
 }

当前输出图像:

电流输出图像

一条路线的图像(示例):

一条路线的图像(示例)

修复图片:

修复图片)

解决了。 有一个镶嵌函数,它允许以下操作:

combined_raster <- mosaic(combined_raster, road_rast_i, fun = sum)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM