GEE水生态环境数据集:
- 开源数据:主要的开源的夜光遥感数据
- GEE数据集:CHIRPS Pentad高分辨率的全球网格降雨数据集
- GEE数据集:将全国水电站分布及其装机容量导出为CSV表格
- GEE数据集:TerraClimate爱达荷大学全球陆地表面的每月气候和气候水平衡数据集
- GEE数据集:ERA5 每日汇总 - 由 ECMWF / Copernicus Climate Change Service制作的最新气候再分析数据集
(持续更新中……)
1、数据集介绍
ERA5 Daily Aggregates - Latest Climate Reanalysis Produced by ECMWF / Copernicus Climate Change Service
ERA5 每日汇总 - 由 ECMWF / Copernicus Climate Change Service制作的最新气候再分析
ERA5 是对全球气候的第五代 ECMWF 大气再分析。再分析将模型数据与来自世界各地的观察结果结合成一个全球完整且一致的数据集。ERA5 取代了其前身 ERA-Interim 再分析。
ERA5 DAILY 每天提供七个 ERA5 气候再分析参数的汇总值:2m 气温、2m 露点温度、总降水量、平均海平面压力、地表压力、10m 风的 u 分量和 10m 的风分量。此外,根据每小时 2m 气温数据计算了每天 2m 处的最低和最高气温。每日总降水量值以每日总和的形式给出。所有其他参数均以每日平均值的形式提供。
ERA5 数据可从 1979 年实时获取到三个月。更多信息和更多 ERA5 大气参数可以在 哥白尼气候数据存储中找到。
提供者说明:每日汇总是根据每个参数的 ERA5 小时值计算的。
相关介绍:
- ERA5是气象海洋最常用的一个再分析产品,是ECMWF对全球气候的第五代大气再分析。目前ECMWF的数值预报结果公认的世界领先,很大程度是因为其先进的资料同化系统。再分析资料是使用资料同化的方法,将模型数据与来自世界各地的观测数据与结合起来,形成一个全球完整的、一致的数据集。
- 目前,ERA5数据集由ERA5,ERA5.1和ERA5-Land组成。ERA5替代了ERA-Interim再分析数据。
- ERA5是综合的再分析资料,时间跨度从1979年(很快将追溯到1950年)到近实时,它在上层大气和近地表尽可能的同化了很多的观测数据。ERA5大气模型与陆地表面模型和波浪模型相耦合。
- ERA5支持扩展(初步版本):目前可获取从1950年-1978年的数据,与ERA5分离开(1979年至今)。尽快在很多方面数据集的质量是相当满意的,但它表现出受热带气旋的影响,有时影响非常剧烈。针对这方面的问题,当前发布的支持扩展只是初步版本,直到ERA51950至近实时的版本更新发布。
- ERA5.1:是针对2000年-2006年,ERA5的重新运行版本,为了改善ERA5在这段时间内对流层下界冷偏差明显。ERA5在大部分对流层的特性与ERA5.1相似。
- ERA5-Land:是陆地表面数据集,时间跨度从1981年(很快会追溯到1950年)至今(缺少近2个月),提供了更高分辨率(9km)和由通过温度梯度校正的ERA5大气参数驱动,但没有额外的数据同化。
- ERA5-Land是通过ECMWF ERA5再分析模型生产的再分析数据集。该模型通过物理法则将来自世界各地的观测数据结合到一个全球完整且一致的数据集中。该数据集包括了自1981年以来,表征温度、湖泊、积雪、土壤水分、辐射和热量、蒸散和径流、风速、气压、降水量及植被的50种指标的月动态数据,空间分辨率为0.1°×0.1°(约9×9 km2网格),可以准确地描述过去的气候状况。
- 通常,获取ERA5数据集通过CDS方式。完整的数据集在ECMWF磁带存档(MARS),但是一部分在特定的经度和纬度地区数据子集(所有的ERA5-Land数据)已修改并放到CDS盘中,通过CDS获取数据比MARS快,所以在条件允许的情况下最后使用CSD盘获取数据。
2、数据集波段
名称 | 单位 | 最小值 | 最大值 | 描述 |
---|---|---|---|---|
mean_2m_air_temperature | ķ | 223.6* | 304* | 2m高处平均气温(日平均值) |
minimum_2m_air_temperature | ķ | 220.7* | 300.8* | 2m高处最低气温(每日最低) |
maximum_2m_air_temperature | ķ | 225.8* | 310.2* | 2m高处的最高气温(每日最高) |
dewpoint_2m_temperature | ķ | 219.3* | 297.8* | 2m高度露点温度(日平均值) |
total_precipitation | 米 | 0* | 0.02* | 总降水量(每日总和) |
surface_pressure | 帕 | 65639* | 102595* | 表面压力(日平均) |
mean_sea_level_pressure | 帕 | 97657.4* | 103861* | 平均海平面压力(日平均) |
u_component_of_wind_10m | 米秒-1 | -11.4* | 11.4* | 10m 风的 u 分量(日平均值) |
v_component_of_wind_10m | 米秒-1 | -10.1* | 10.1* | 10m 风的 v 分量(日平均值) |
3、GEE数据加载与使用
(1)JavaScript代码
// Example script to load and visualize ERA5 climate reanalysis parameters in
// Google Earth Engine
// Daily mean 2m air temperature
var era5_2mt = ee.ImageCollection('ECMWF/ERA5/DAILY')
.select('mean_2m_air_temperature')
.filter(ee.Filter.date('2019-07-01', '2019-07-31'));
print(era5_2mt);
// Daily total precipitation sums
var era5_tp = ee.ImageCollection('ECMWF/ERA5/DAILY')
.select('total_precipitation')
.filter(ee.Filter.date('2019-07-01', '2019-07-31'));
// Daily mean 2m dewpoint temperature
var era5_2d = ee.ImageCollection('ECMWF/ERA5/DAILY')
.select('dewpoint_2m_temperature')
.filter(ee.Filter.date('2019-07-01', '2019-07-31'));
// Daily mean sea-level pressure
var era5_mslp = ee.ImageCollection('ECMWF/ERA5/DAILY')
.select('mean_sea_level_pressure')
.filter(ee.Filter.date('2019-07-01', '2019-07-31'));
// Daily mean surface pressure
var era5_sp = ee.ImageCollection('ECMWF/ERA5/DAILY')
.select('surface_pressure')
.filter(ee.Filter.date('2019-07-01', '2019-07-31'));
// Daily mean 10m u-component of wind
var era5_u_wind_10m = ee.ImageCollection('ECMWF/ERA5/DAILY')
.select('u_component_of_wind_10m')
.filter(ee.Filter.date('2019-07-01', '2019-07-31'));
// Convert pressure levels from Pa to hPa - Example for surface pressure
var era5_sp = era5_sp.map(function(image) {
return image.divide(100).set(
'system:time_start', image.get('system:time_start'));
});
// Visualization palette for total precipitation
var visTp = {
min: 0,
max: 0.1,
palette: ['#FFFFFF', '#00FFFF', '#0080FF', '#DA00FF', '#FFA400', '#FF0000']
};
// Visualization palette for temperature (mean, min and max) and 2m dewpoint
// temperature
var vis2mt = {
min: 250,
max: 320,
palette: [
'#000080', '#0000D9', '#4000FF', '#8000FF', '#0080FF', '#00FFFF', '#00FF80',
'#80FF00', '#DAFF00', '#FFFF00', '#FFF500', '#FFDA00', '#FFB000', '#FFA400',
'#FF4F00', '#FF2500', '#FF0A00', '#FF00FF'
]
};
// Visualization palette for u- and v-component of 10m wind
var visWind = {
min: 0,
max: 30,
palette: [
'#FFFFFF', '#FFFF71', '#DEFF00', '#9EFF00', '#77B038', '#007E55', '#005F51',
'#004B51', '#013A7B', '#023AAD'
]
};
// Visualization palette for pressure (surface pressure, mean sea level
// pressure) - adjust min and max values for mslp to min:990 and max:1050
var visPressure = {
min: 500,
max: 1150,
palette: [
'#01FFFF', '#058BFF', '#0600FF', '#DF00FF', '#FF00FF', '#FF8C00', '#FF8C00'
]
};
// Add layer to map
Map.addLayer(
era5_tp.filter(ee.Filter.date('2019-07-15')), visTp,
'Daily total precipitation sums');
Map.addLayer(
era5_2d.filter(ee.Filter.date('2019-07-15')), vis2mt,
'Daily mean 2m dewpoint temperature');
Map.addLayer(
era5_2mt.filter(ee.Filter.date('2019-07-15')), vis2mt,
'Daily mean 2m air temperature');
Map.addLayer(
era5_u_wind_10m.filter(ee.Filter.date('2019-07-15')), visWind,
'Daily mean 10m u-component of wind');
Map.addLayer(
era5_sp.filter(ee.Filter.date('2019-07-15')), visPressure,
'Daily mean surface pressure');
Map.setCenter(21.2, 22.2, 2);
(2)python代码
# 在GEE中加载 ERA5 气候再分析数据实例
# Daily mean 2m air temperature //7月份地表2m处的日均气温
era5_2mt = ee.ImageCollection('ECMWF/ERA5/DAILY') \
.select('mean_2m_air_temperature') \
.filter(ee.Filter.date('2019-07-01', '2019-07-31'))
# print(era5_2mt)
# Daily total precipitation sums //7月降水量总计
era5_tp = ee.ImageCollection('ECMWF/ERA5/DAILY') \
.select('total_precipitation') \
.filter(ee.Filter.date('2019-07-01', '2019-07-31'))
# Daily mean 2m dewpoint temperature //7月份地表2m处的平均日露点温度
era5_2d = ee.ImageCollection('ECMWF/ERA5/DAILY') \
.select('dewpoint_2m_temperature') \
.filter(ee.Filter.date('2019-07-01', '2019-07-31'))
# Daily mean sea-level pressure //7月份日均海平面气压
era5_mslp = ee.ImageCollection('ECMWF/ERA5/DAILY') \
.select('mean_sea_level_pressure') \
.filter(ee.Filter.date('2019-07-01', '2019-07-31'))
# Daily mean surface pressure //7月份地表平均气压
era5_sp = ee.ImageCollection('ECMWF/ERA5/DAILY') \
.select('surface_pressure') \
.filter(ee.Filter.date('2019-07-01', '2019-07-31'))
# Daily mean 10m u-component of wind //7月份地表10m处风的u组分
era5_u_wind_10m = ee.ImageCollection('ECMWF/ERA5/DAILY') \
.select('u_component_of_wind_10m') \
.filter(ee.Filter.date('2019-07-01', '2019-07-31'))
# Convert pressure levels from Pa to hPa - Example for surface pressure
# 将气压单位由Pa转换为hPa
def func_xtx(image):
return image.divide(100).set(
'system:time_start', image.get('system:time_start'))
era5_sp = era5_sp.map(func_xtx)
# Visualization palette for total precipitation
# 降水量可视化设置
visTp = {
'min': 0,
'max': 0.1,
'palette': ['#FFFFFF', '#00FFFF', '#0080FF', '#DA00FF', '#FFA400', '#FF0000']
}
# Visualization palette for temperature (mean, min and max) and 2m dewpoint
# temperature
vis2mt = {
'min': 250,
'max': 320,
'palette': [
'#000080', '#0000D9', '#4000FF', '#8000FF', '#0080FF', '#00FFFF', '#00FF80',
'#80FF00', '#DAFF00', '#FFFF00', '#FFF500', '#FFDA00', '#FFB000', '#FFA400',
'#FF4F00', '#FF2500', '#FF0A00', '#FF00FF'
]
}
# Visualization palette for u- and v-component of 10m wind
visWind = {
'min': 0,
'max': 30,
'palette': [
'#FFFFFF', '#FFFF71', '#DEFF00', '#9EFF00', '#77B038', '#007E55', '#005F51',
'#004B51', '#013A7B', '#023AAD'
]
}
# Visualization palette for pressure (surface pressure, mean sea level
# pressure) - adjust min and max values for mslp to min:990 and max:1050
visPressure = {
'min': 500,
'max': 1150,
'palette': [
'#01FFFF', '#058BFF', '#0600FF', '#DF00FF', '#FF00FF', '#FF8C00', '#FF8C00'
]
}
# Add layer to map
Map.addLayer(
era5_tp.filter(ee.Filter.date('2019-07-15')), visTp,
'Daily total precipitation sums')
Map.addLayer(
era5_2d.filter(ee.Filter.date('2019-07-15')), vis2mt,
'Daily mean 2m dewpoint temperature')
Map.addLayer(
era5_2mt.filter(ee.Filter.date('2019-07-15')), vis2mt,
'Daily mean 2m air temperature')
Map.addLayer(
era5_u_wind_10m.filter(ee.Filter.date('2019-07-15')), visWind,
'Daily mean 10m u-component of wind')
Map.addLayer(
era5_sp.filter(ee.Filter.date('2019-07-15')), visPressure,
'Daily mean surface pressure')
Map.setCenter(21.2, 22.2, 2)
为了更加直观的观察数据分布,叠加世界行政区边界
# 加载行政区边界
countries_shp = '../data/countries.shp'
countries = geemap.shp_to_ee(countries_shp)
Map.addLayer(ee.Image().paint(countries, 0, 1), {'palette':'darkblue'}, 'world countris')
(3)结果展示如下
截取局部区域(我国地区)
4、ERA5数据集引用
-
Copernicus Climate Change Service (C3S) (2017): ERA5: Fifth generation of ECMWF atmospheric reanalyses of the global climate. Copernicus Climate Change Service Climate Data Store (CDS), (date of access), https://cds.climate.copernicus.eu/cdsapp#!/home
参考:
- https://blog.csdn.net/wuwenhuanwu/article/details/114504373
- https://developers.google.com/earth-engine/datasets/catalog/ECMWF_ERA5_DAILY#description