目录
一、主要信息
(一)数据提供者和数据集名称
Daily Aggregates: Google and Copernicus Climate Data Store、ECMWF/ERA5_LAND/DAILY_AGGR
(二)可用时间
1950年01月02日–2024年01月31日
(三)空间分辨率
11132米
(四)所使用的主要波段
波段名称 | 单位 | 描述 |
temperature_2m_max | K | daily maximum temperature_2m value |
temperature_2m_min | K | daily minimum temperature_2m value |
二、数据集的使用
(一)具体代码
使用此数据集下载一个区域(roi)每天的温度数据,以武汉市为例。
注意:
1、这里需要自己定义一个感兴趣区域roi。
2、使用此数据集不可超出它的可用时间范围。
// 获取ERA5陆地日聚合数据集,并根据感兴趣区域筛选数据
var dataset = ee.ImageCollection("ECMWF/ERA5_LAND/DAILY_AGGR").filterBounds(roi);
// 定义一个函数,用于将温度转换为摄氏度
var convertToCelsius = function(image) {
return image.subtract(273.15).set('system:time_start', image.get('system:time_start'));
};
// 定义起始年份和结束年份
var startYear = 2000;
var endYear = 2023;
// 循环处理每一年的数据
for (var year = startYear; year <= endYear; year++) {
// 定义当前年份的起始日期和结束日期
var startDate = ee.Date.fromYMD(year, 1, 1);
var endDate = ee.Date.fromYMD(year + 1, 1, 1);
// 根据起始日期和结束日期筛选最高温度和最低温度数据
var maxTemp = dataset.select('temperature_2m_max').filterDate(startDate, endDate);
var minTemp = dataset.select('temperature_2m_min').filterDate(startDate, endDate);
// 对最高温度和最低温度数据集应用温度转换函数
var dailyTemperatureMax = maxTemp.map(convertToCelsius);
var dailyTemperatureMin = minTemp.map(convertToCelsius);
// 设置图表的标题和轴标签等选项(最高温度)
var titleMax = {
title: 'Daily maximum temperature - ' + year,
hAxis: { title: 'Time' },
vAxis: { title: 'Temperature (°C)' },
};
// 设置图表的标题和轴标签等选项(最低温度)
var titleMin = {
title: 'Daily minimum temperature - ' + year,
hAxis: { title: 'Time' },
vAxis: { title: 'Temperature (°C)' },
};
// 生成最高温度的图表
var chartMax = ui.Chart.image.seriesByRegion({
imageCollection: dailyTemperatureMax,
regions: roi,
reducer: ee.Reducer.max(),
scale: 2500,
xProperty: 'system:time_start',
seriesProperty: 'SITE'
})
.setOptions(titleMax)
.setChartType('LineChart');
// 生成最低温度的图表
var chartMin = ui.Chart.image.seriesByRegion({
imageCollection: dailyTemperatureMin,
regions: roi,
reducer: ee.Reducer.min(),
scale: 2500,
xProperty: 'system:time_start',
seriesProperty: 'SITE'
})
.setOptions(titleMin)
.setChartType('LineChart');
// 打印最高温度的图表
print(chartMax);
// 打印最低温度的图表
print(chartMin);
}
(二)结果
运行结果会有46幅图表,部分图表如下图所示。下载csv表格的步骤在我的前几个博客里面已有介绍,在这里就不过多赘述了!
注:下期分享GEE中下载蒸发的栅格数据!!!