我一直以此为灵感。我有 c.400 个 GPS 文件,其中的 GPS 位置位于 csv 中,每个 csv 都有一个文件属性,我想保留该文件属性以基于该属性创建热图。
https://gis.stackexchange.com/questions/168886/r-how-to-build-heatmap-with-the-leaflet-package
我的代码适用于单个 csv,并从光栅图像生成热图。我的多个 csv 代码为每个 csv 生成一个新的栅格,但是我正在努力成功合并栅格。为了实现这一点,我尝试使用 res/ext/crs 常量进行重新采样,但我得到了似乎很奇怪的行为(或更可能是我的误解)。
processed_data_list 包括栅格和文件属性:
raster_layers<-lapply(processed_data_list, function(item) item$raster_data)
merged_raster_stack<- do.call(merge,raster_layers)
如果我不重新采样,那么在合并时我会收到与不同分辨率/来源相关的错误。如果我重新采样,即使 res、ext 和 crs 设置为原始栅格 (KernelDensityRaster),并使用样本数据,(https://data.cityofchicago.org/api/views/22s8-eq8h/rows. csv?accessType=DOWNLOAD) 重新采样的栅格只有 NA。
resampled_raster<- KernelDensityRaster # results in merging error
#or
#resampled_raster<- raster(res = res(KernelDensityRaster), ext = extent(KernelDensityRaster), crs = crs(KernelDensityRaster)) #results in NA data values
打印(摘要(值(KernelDensityRaster))) 分钟。第一曲。第三曲区中位数平均值。最大限度。 0.00000 0.00000 0.04892 6.14610 9.73696 56.01518
打印(摘要(值(重采样_栅格))) NA 模式 逻辑10000
这里的问题是,我认为我只是通过使用更改的 ext/res/crs 属性重新运行栅格来重新采样。但是,我应该使用 resample {raster} 函数:
resampled_raster<- resample(KernelDensityRaster, FirstRaster, method = "bilinear") #resample so the new raster matchs the first raster (in terms of origin and resolution)