AI Earth首套气象数据集(ERA5-Land )开放使用

AIEarth地球科学云平台 2023-02-10 15:25:01

气象数据集(ERA5-Land)

ERA5-Land是气候再分析数据集,与ERA5相比,提供了更高分辨率的陆地气象要素长时序持续的观测值。ERA5-Land是ECMWF ERA5气候再分析数据的陆地部分反演生产的。生产时将气候模式数据与气象观测站的监测数据结合起来,利用物理学定律形成一套全球完整的、连续的数据集。
数据来源为 CDS(Copernicus Climate Data Store),其数据已被重新格点化为0.1°×0.1°的常规经纬度格点数据。关于数据的具体描述,可查阅官方网站:https://cds.climate.copernicus.eu/cdsapp#!/home

1、数据介绍

AI Earth平台目前上线ERA5-Land的3类数据产品,分别是ERA5-Land hourly data、ERA5-Land monthly averaged data、ERA5-Land monthly averaged data by hour of day ,ERA5-land 数据产品覆盖全球陆地区域1950-2022年共50类气象要素(包括温度、降水、大气压、辐射、蒸散发等),空间分辨率为0.1° x 0.1° (~9 km),数据将持续进行更新。

 

2、数据检索

在数据产品列表下的气象数据中可以找到对应ERA5-Land 的3类数据产品。支持用户选择时间段进行数据检索。

 

3、开发者模式

可通过开发者模式调用ERA5-Land 的3类数据产品。如下为利用ERA5-Land monthly averaged data 数据进行平均气温的长时序气候态分析。

 上图为中国区域1991-2020年30年年均温空间分布

 上图为中国区域2022年年均温距平空间分布(Baseline 1991-2020年)

 

部分代码如下,仅供参考,欢迎登录平台体验。如有任何疑问,欢迎随时与AI Earth联系交流。

import aie
aie.Authenticate()
aie.Initialize()

# 指定需要检索的区域
region = aie.FeatureCollection('China_Province').geometry()

#1991-2020 共30年 逐月均温,并将 K 转为 °C
dataset =  aie.ImageCollection('ERA5_LAND_MONTHLY').filterDate('1991-01-02', '2020-12-31')
print(dataset.size().getInfo())
# # size = dataset.size().getInfo()
# size = 360
# for i in range(size):
#     id = dataset.toList(count=size).getInfo()[i]['id']
#     print(id)
Temp_Average_30y = (dataset.select(['temperature_2m']).reduce(aie.Reducer.mean())).subtract(aie.Image.constant(273.15)).clip(region)

# 计算2022年年均温
Temp_2022 = aie.ImageCollection('ERA5_LAND_MONTHLY').filterDate('2022-01-02', '2022-12-31').select(['temperature_2m'])
Temp_Average_2022 = Temp_2022.reduce(aie.Reducer.mean()).subtract(aie.Image.constant(273.15)).clip(region)
Temp_Anomaly =Temp_Average_2022.subtract(Temp_Average_30y)

#可视化
map = aie.Map(
    center=region.getCenter(),
    height=800,
    zoom=3
)

vis_temp = {
    'min': -10,
    'max': 20,
    'palette': [
        "#000080","#0000D9","#4000FF","#8000FF","#0080FF","#00FFFF",
        "#00FF80","#80FF00","#DAFF00","#FFFF00","#FFF500","#FFDA00",
        "#FFB000","#FFA400","#FF4F00","#FF2500","#FF0A00","#FF00FF",
    ]
}

vis_temp_anomaly = {
    'min': -3,
    'max': 3,
    'palette': ['#0000D9','#ffffff','#FF0000']
}

map.addLayer(
    Temp_Average_30y,
    vis_temp,
    'Temp_Average_30y(°C)',
    bounds=dataset.getBounds()
)

map.addLayer(
    Temp_Average_2022,
    vis_temp,
    'Temp_Average_2022(°C)',
    bounds=dataset.getBounds()
)

map.addLayer(
    Temp_Anomaly,
    vis_temp_anomaly,
    'Temp_Anomaly(°C)',
    bounds=dataset.getBounds()
)
map     

##计算全国30年月度平均温
#利用aie.Filter.calendarRange()函数筛选对应月份数据
def get_month_data(mon,parameter):
    dataset =  aie.ImageCollection('ERA5_LAND_MONTHLY')\
                  .filterDate('1991-01-02', '2020-12-31')\
                  .filter(aie.Filter.calendarRange(mon, None,'month'))\
                  .select([parameter])
    return dataset

x_temp_series = []
y_temp_series = []

for i in range(1,13):
    temp_mean = get_month_data(i,'temperature_2m').reduce(aie.Reducer.mean()).subtract(aie.Image.constant(273.15)) 
    temp_sta =temp_mean.reduceRegion(aie.Reducer.mean(), region, 10000)
    
    x_temp_series.append(str(i).zfill(2) + '月')
    y_temp_series.append(temp_sta.getInfo()['temperature_2m_mean'])

#绘制月度均温曲线图
from bqplot import pyplot as plt
plt.figure(1, title='1991-2020年全国逐月均温统计')
plt.plot(x_temp_series, y_temp_series)
plt.show()
       

 

...全文
1272 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复

AIE平台技术交流钉钉群,群号:32152986

32

社区成员

发帖
与我相关
我的任务
社区描述
基于达摩院在深度学习、计算机视觉、地理空间分析等方向上的技术积累,结合阿里云强大算力支撑,提供多源遥感对地观测数据的云计算分析服务,用数据感知地球世界,让AI助力科学研究。
阿里云云计算图像处理 技术论坛(原bbs) 浙江省·杭州市
社区管理员
  • AI Earth地球科学云平台
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧