2026/4/13 12:36:27
网站建设
项目流程
属于c2c的网站是,北太平庄做网站公司,网站开发与应用论文百度文库,wordpress cron目录
一、参数定义模块#xff1a;全局配置核心参数
二、空间区域定义模块#xff1a;按半球划分导出范围
三、数据处理核心模块#xff1a;从加载到均值计算
四、导出模块#xff1a;分区域导出至 Google Drive
五、关键设计思路与优势
六、注意事项
七、运行结果 …目录一、参数定义模块全局配置核心参数二、空间区域定义模块按半球划分导出范围三、数据处理核心模块从加载到均值计算四、导出模块分区域导出至 Google Drive五、关键设计思路与优势六、注意事项七、运行结果若觉得代码对您的研究 / 项目有帮助欢迎点击打赏支持需要完整代码的朋友打赏后可在后台私信复制文章标题发给我我会尽快发您完整可运行代码感谢支持本代码基于 Google Earth EngineGEE平台实现 ERA5-Land 数据集指定年份、指定波段以表层土壤体积含水量为例的年度均值计算并按东西半球划分区域将结果以 GeoTIFF 格式导出至 Google Drive核心是完成“数据筛选 - 均值计算 - 分区域导出”的全流程自动化处理。一、参数定义模块全局配置核心参数该模块集中定义了代码运行所需的各类基础参数便于后续维护和修改无需在代码中逐个查找调整。参数类别关键参数说明设计逻辑关键代码片段数据集配置collection_id指定 ERA5-Land 每日聚合数据集 ID明确数据来源GEE 平台中每个官方数据集都有唯一 ID确保加载正确数据var collection_id ECMWF/ERA5_LAND/DAILY_AGGR;变量与波段配置-target_source_variable目标原始变量如表层土壤含水量-calculated_band_name结果波段名拼接 “_annual_mean” 标识年均值区分原始数据和处理后数据波段名语义化便于后续识别数据属性var target_source_variable volumetric_soil_water_layer_1;var calculated_band_name target_source_variable _annual_mean;时间范围配置start_year起始年、end_year结束年限定数据处理的时间区间支持根据需求调整年份跨度var start_year 1985;var end_year 2000;输出属性配置-output_scale_meters输出分辨率约 0.1 度对应 11132 米-output_folderGoogle Drive 目标文件夹名控制输出数据的空间精度指定存储路径避免文件杂乱var output_scale_meters 11132;var output_folder ERA5_Land_SM_1m_AnnualMean_Commented;二、空间区域定义模块按半球划分导出范围由于 ERA5-Land 数据覆盖全球直接导出易因数据量过大导致任务失败因此按经度将全球划分为东西两个半球分别处理西半球经度范围 - 180~0°纬度范围 - 90~90°覆盖美洲、大西洋西部等区域东半球经度范围 0~180°纬度范围 - 90~90°覆盖欧亚大陆、非洲、大洋洲等区域半球字典将半球名称与对应几何区域封装为字典便于后续循环遍历减少重复代码// 西半球经度-180~0纬度-90~90 var western_hemisphere ee.Geometry.Rectangle([-180, -90, 0, 90], null, false); // 东半球经度0~180纬度-90~90 var eastern_hemisphere ee.Geometry.Rectangle([0, -90, 180, 90], null, false); // 半球字典便于循环遍历导出 var hemispheres { Western: western_hemisphere, Eastern: eastern_hemisphere };三、数据处理核心模块从加载到均值计算数据加载通过ee.ImageCollection(collection_id)加载 ERA5-Land 每日聚合影像集合这是 GEE 中加载批量影像数据的标准方式。// 加载影像集合 var era5_land_daily ee.ImageCollection(collection_id);时间筛选针对每一年定义 “1 月 1 日 - 12 月 31 日” 的完整时间范围使用filterDate(start_date, end_date)筛选出该年份的所有影像确保数据时间完整性。// 定义当前年份的时间范围全年 var start_date ee.Date(year -01-01); var end_date ee.Date(year -12-31); // 筛选当前年份的目标变量数据 var collection_year_target_band era5_land_daily .filterDate(start_date, end_date)波段筛选用select(target_source_variable)仅保留目标变量对应的波段剔除其他无关波段减少数据处理量。.select(target_source_variable); // 仅保留目标变量波段年均值计算通过collection_year_target_band.mean()对筛选后的年度影像集合进行像素级时间序列平均即每个像素的年度均值由该像素全年每日数据计算得出实现 “日数据→年均值” 的转换。// 计算目标变量的年均值像素级时间序列平均 var annual_mean_image collection_year_target_band.mean();波段重命名将计算结果波段重命名为calculated_band_name含 “annual_mean” 标识避免与原始波段名混淆提升数据可读性。// 重命名结果波段明确标识为年均值 annual_mean_image annual_mean_image.rename(calculated_band_name);四、导出模块分区域导出至 Google Drive循环遍历半球通过字典遍历功能依次处理东西半球的导出任务实现代码复用。// 循环遍历半球分别导出数据 for (var h_name in hemispheres) { var h_geometry hemispheres[h_name];影像裁剪用clip(h_geometry)将年度均值影像裁剪至当前半球的地理范围确保导出数据仅包含目标区域减少文件体积。// 裁剪影像到当前半球范围 var clipped_image annual_mean_image.clip(h_geometry);description导出任务描述将在 GEE 的 Tasks 面板显示便于区分不同任务包含变量名、年份、半球信息。fileNamePrefix文件名前缀包含核心信息便于在 Google Drive 中查找文件。scale输出分辨率与前文定义的output_scale_meters一致确保空间精度统一。region导出地理范围即当前半球的几何区域。fileFormat文件格式指定为 GeoTIFF这是地理空间数据的标准格式支持后续在 ArcGIS、QGIS 等软件中进一步处理。crs坐标参考系指定为 EPSG:4326WGS84是全球通用的地理坐标系统确保数据空间参考统一。// 定义导出相关参数 var description AnnualMean_ calculated_band_name _ year _ h_name; var file_name_prefix target_source_variable _annual_mean_ year _ h_name; // 导出影像到Google Drive Export.image.toDrive({ image: clipped_image, description: description, folder: output_folder, fileNamePrefix: file_name_prefix, scale: output_scale_meters, region: h_geometry, fileFormat: GeoTIFF, crs: EPSG:4326 });任务触发提示代码末尾打印提示信息告知用户需在 GEE 代码编辑器的 Tasks 面板手动运行导出任务因 GEE 导出任务需用户手动确认触发避免用户遗漏操作。// 打印任务定义完成提示 print(所有导出任务已定义。请检查 GEE 代码编辑器右侧的 Tasks 选项卡以运行任务。);五、关键设计思路与优势模块化设计参数集中定义、功能模块分离区域定义、数据处理、导出便于后续修改参数如更换变量、调整年份、修改导出路径降低维护成本。分区域处理按半球划分导出范围解决了全球数据单次导出量过大导致的任务超时或失败问题提升导出成功率。语义化命名变量名、波段名、文件名均包含关键信息如变量类型、年份、半球增强代码可读性和数据可识别性。自动化流程通过嵌套循环年份循环 半球循环实现多年份、多区域的自动化处理无需手动逐个年份、逐个区域配置任务大幅提升效率。六、注意事项数据集可用性ERA5-Land 数据集的时间跨度有限需确保start_year和end_year在数据集的可用时间范围内否则会筛选出空集合导致计算失败。任务运行代码仅定义导出任务需用户在 GEE Tasks 面板手动启动任务且导出速度受网络状况、GEE 服务器负载影响大年份跨度的任务可能需要较长时间。存储容量导出的 GeoTIFF 文件会占用 Google Drive 存储空间需提前确保 Drive 有足够容量尤其是年份跨度大、分辨率高的场景。权限设置需确保 GEE 账户已授权访问 Google Drive否则导出任务会因权限不足失败。七、运行结果点击RUN即可下载数据控制台输出的相关信息下面展示的是部分数据的制图结果1985年全球土壤湿度1990年全球土壤湿度1995年全球土壤湿度2000年全球土壤湿度若觉得代码对您的研究 / 项目有帮助欢迎点击打赏支持需要完整代码的朋友打赏后可在后台私信复制文章标题发给我我会尽快发您完整可运行代码感谢支持