当前位置: 首页 > news >正文

探索Python融合地学:一文教会你下载ERA5-Land数据

下载ERA5-Land数据的准备工作

注册并获取CDS API密钥:访问Copernicus Climate Data Store (CDS) 官网(https://cds.climate.copernicus.eu/),完成账号注册。在用户页面找到API密钥,保存为$HOME/.cdsapirc文件,内容格式如下:

url: https://cds.climate.copernicus.eu/api/v2 key: UID:API-key

安装必要Python库:

pip install cdsapi xarray numpy

通过CDS API下载数据

使用cdsapi库直接请求数据,示例代码下载2020年1月的日均2米气温数据:

import cdsapi c = cdsapi.Client() c.retrieve( 'reanalysis-era5-land', { 'variable': '2m_temperature', 'year': '2020', 'month': '01', 'day': list(range(1, 32)), 'time': ['00:00', '12:00'], 'format': 'netcdf', }, 'era5_land_temp.nc' )

https://www.zhihu.com/zvideo/1994564245371756984/
https://www.zhihu.com/zvideo/1994564243933128684/
https://www.zhihu.com/zvideo/1994564244046378913/
https://www.zhihu.com/zvideo/1994564243635327027/
https://www.zhihu.com/zvideo/1994564242402191321/
https://www.zhihu.com/zvideo/1994564241835988775/
https://www.zhihu.com/zvideo/1994564240472831811/
https://www.zhihu.com/zvideo/1994564239864644278/
https://www.zhihu.com/zvideo/1994564238644115391/
https://www.zhihu.com/zvideo/1994564237973021265/
https://www.zhihu.com/zvideo/1994564237306139680/
https://www.zhihu.com/zvideo/1994564236173668797/
https://www.zhihu.com/zvideo/1994564236026872280/
https://www.zhihu.com/zvideo/1994564235682935847/
https://www.zhihu.com/zvideo/1994564235234129467/
https://www.zhihu.com/zvideo/1994564235129287151/
https://www.zhihu.com/zvideo/1994564234152002275/

批量下载多时间范围数据

对于跨年/月的大批量下载,建议分时段请求以避免超时:

years = ['2019', '2020'] months = [f'{m:02d}' for m in range(1,13)] for year in years: for month in months: c.retrieve( 'reanalysis-era5-land', { 'variable': 'soil_temperature_level_1', 'year': year, 'month': month, 'time': '00:00', 'format': 'grib' }, f'era5_land_soil_{year}{month}.grib' )

数据处理与可视化

使用xarray处理下载的NetCDF文件:

import xarray as xr ds = xr.open_dataset('era5_land_temp.nc') # 转换为摄氏温度并计算月平均 ds['t2m'] = ds['t2m'] - 273.15 monthly_mean = ds.groupby('time.month').mean()

绘制空间分布图:

import matplotlib.pyplot as plt monthly_mean['t2m'].isel(month=0).plot() plt.title('January Average Temperature') plt.savefig('temp_map.png')

注意事项

ERA5-Land数据延迟约3个月,实时数据需选择ERA5T临时产品。不同变量可能存储在独立的数据集(如reanalysis-era5-land-monthly-means提供月度统计量)。GRIB格式文件建议用cfgrib引擎读取:

ds = xr.open_dataset('era5_land.grib', engine='cfgrib')
http://www.jsqmd.com/news/240902/

相关文章:

  • 从阅文招聘JD看网文平台算法化-网文平台拥抱科技·卓伊凡
  • Figma中文界面插件:让专业设计工具说中文
  • 剖析大数据领域Spark的任务调度算法
  • 【PyTorch】2024保姆级安装教程-Python-(CPU+GPU详细完整版)-
  • 资深Android开发工程师职位深度解析:基于广州极飞科技股份有限公司的职位需求
  • CCS20高可用性架构构建:实际案例分享
  • Anthropic 重磅发布 Cowork:让普通人都能用上Claude Code!
  • 全网最全9个一键生成论文工具,本科生毕业论文必备!
  • Flink:窗口同组联结(Window CoGroup)
  • 意料之内的回调,倒车接人?
  • Figma中文界面终极指南:3步解锁专业设计无障碍体验
  • 【顶级EI复现】基于主从博弈的售电商多元零售套餐设计与多级市场购电策略(Matlab代码实现)
  • 人工智能之数学基础:正态分布在机器学习领域中的体现
  • STM32CubeMX安装兼容性问题解决:全面讲解方案
  • USB-Blaster驱动手动安装步骤:系统学习与实践
  • 软件测试面试(内附答案)
  • 厦门大学突破:多模态模型进入“推理进化”时代,7B小模型的大逆袭
  • 【复现】MFAC无模型自适应控制CFDL+PFDL+FFDL三个非线性系统动态线性研究(Matlab代码实现)
  • Java 提供了丰富的数据结构来处理和组织数据【1】
  • Keil uVision5嵌入式C开发:新手教程(从零配置环境)
  • 【倒计时一天】2025第八届金猿大数据产业发展论坛——暨AI InfraData Agent趋势论坛丨颁奖典礼·上海
  • 搞定NPU推理加速实战
  • 智能穿戴OLED显示方案:SSD1306中文手册系统学习
  • 了解Java 数据结构【1】
  • Matlab实现图正则化稀疏编码(GraphSC)算法详解
  • javascript数据类型转换-转换为数字型
  • 基于实际项目的PCB布局布线思路:初级应用示范
  • 批量 roi 目录 roi
  • 项目应用中c++ spidev0.0 read值为255的解决方案
  • 麒麟V10-ARM架构Docker启动报错