You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用R terra包在大型DEM栅格生成高分辨率等高线?

解决terra::as.contour()处理大型DEM等高线粗糙的问题

问题原因

terra::as.contour()默认参数maxcells = 500000,当输入栅格的单元格总数超过该阈值时,函数会自动对栅格进行降采样,以此提升计算效率,但会丢失等高线细节。你的4000×6000像素DEM总单元格数为24000000,远大于默认阈值,因此生成的等高线被大幅简化。

直接解决方案

调用函数时手动设置maxcells为大于DEM总单元格数的值,禁用自动降采样,基于全分辨率数据生成精细等高线:

# 针对4000×6000的DEM,设置maxcells为24000000(或更大数值)
my_line = terra::as.contour(dem, levels=single_elev, maxcells=24000000)

性能平衡建议

全分辨率计算会占用更多内存和计算时间,如果机器性能有限,可以根据需求调整maxcells值,在细节精度和计算效率之间做平衡。例如设置为12000000,将栅格降采样到原分辨率的一半,既能保留较多细节,又能降低计算负载。


内容的提问来源于stack exchange,提问作者Cyril Mory

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 04:00:55