GEE中使用降水数据集求年平均降水(1+2)

1、主要信息

1)数据提供者

JAXA Earth Observation Research Center

2)数据集

" JAXA/GPM_L3/GSMaP/v6/reanalysis "数据集和

"JAXA/GPM_L3/GSMaP/v6/operational"数据集

3)可用时间

20000301000000–至今

4)空间分辨率和时间分辨率

11132米、3小时

5)所含主要波段

如下表

" JAXA/GPM_L3/GSMaP/v6/reanalysis "数据集

名字

单位

最小值

最大值

描述

hourlyPrecipRate

毫米/小时

0

200.31

逐小时降水率快照

hourlyPrecipRateGC

毫米/小时

0

200

根据雨量计调整的每小时降水率快照

observationTimeFlag

小时

-72.52

14.97

从文件开始时间开始的相对时间到微波辐射计(成像仪/测深仪)观测的时间

gaugeQualityInfo

计数/天

0

82

当状态为 “临时”,1 表示已调整,0 表示未调整。 当状态为“永久”时,像素值为每日 像素中用于调整的仪表数的平均值。

"JAXA/GPM_L3/GSMaP/v6/operational"数据集

名字

单位

最小值

最大值

描述

hourlyPrecipRate

毫米/小时

0

204.88

逐小时降水率快照

hourlyPrecipRateGC

毫米/小时

0

200.36

根据雨量计调整的每小时降水率快照

observationTimeFlag

小时

-124.72

16.06

从文件开始时间开始的相对时间到微波辐射计(成像仪/测深仪)观测的时间

2、数据集的使用

1)具体代码

使用此数据集计算一个区域(roi)的年平均降水(注意:1、这里需要自己定义一个感兴趣区域roi。2、使用此数据集不可超出它们的可用时间范围。)

//3.JAXA/GPM_L3/GSMaP/v6/reanalysis and JAXA/GPM_L3/GSMaP/v6/operational

//将JAXA/GPM_L3/GSMaP/v6/reanalysis数据集存在dataset1中

var dataset1 = ee.ImageCollection('JAXA/GPM_L3/GSMaP/v6/reanalysis')

                  .filter(ee.Filter.date('2000-03-01', '2014-03-12'))

                  .filterBounds(roi);

                 

//将JAXA/GPM_L3/GSMaP/v6/operational数据集存在dataset2中

var dataset2 = ee.ImageCollection('JAXA/GPM_L3/GSMaP/v6/operational')

                  .filter(ee.Filter.date('2014-03-01', '2023-12-25'))

                  .filterBounds(roi);

// 合并数据集

var mergedDataset = dataset1.merge(dataset2);

//创建一个变量precipitation,用于存储从mergedDataset中选择的名为'hourlyPrecipRate'的降水率图层

var precipitation = mergedDataset.select('hourlyPrecipRate');

//将名为roi的图层添加到地图中,roi表示感兴趣区域

Map.addLayer(roi);

//以roi为中心,将地图视图设置为缩放级别7

Map.centerObject(roi,7);

// 定义空间和时间范围

var startyear = 2000;

var endyear = 2023;

//使用ee.Date.fromYMD方法创建了一个起始日期,其中年、月和日分别由startyear、1和1指定

var startdate = ee.Date.fromYMD(startyear, 1, 1);

//使用ee.Date.fromYMD方法创建了一个结束日期,其中年、月和日分别由endyear、12和1指定。

var enddate = ee.Date.fromYMD(endyear, 12, 1);

// 创建了一个包含起始年份到结束年份范围的年份列表

var years = ee.List.sequence(startyear, endyear);

// 使用filterDate方法根据起始日期和结束日期筛选出在该时间范围内的降水数据,

//并使用sort方法按照'系统时间开始'属性进行逆序排序。

var P = precipitation.filterDate(startdate, enddate)

  .sort('system:time_start', false);

// 计算每年的降水量,创建了一个名为yearlyP的图像集合,其中每个图像代表每年的降水量。

//通过map方法遍历年份列表,对每一年的降水数据进行求和并设置相关属性。

var yearlyP = ee.ImageCollection.fromImages(

  years.map(function(y) {

    var w = P.filter(ee.Filter.calendarRange(y, y, 'year')).sum();

    return w.set('year', y)

      .set('date', ee.Date.fromYMD(y, 1, 1))

      .set('system:time_start', ee.Date.fromYMD(y, 1, 1));

  })

);

// 预定义了图表的标题、横轴标题和纵轴标题。

var title = {

  title: 'Yearly precipitation',

  hAxis: { title: 'Time' },

  vAxis: { title: 'Precipitation (mm)' },

};

//创建了一个图表,通过ui.Chart.image.seriesByRegion方法以区域为单位绘制图像集合的时间序列。

var chart = ui.Chart.image.seriesByRegion({

    imageCollection: yearlyP,

    regions: roi,

    reducer: ee.Reducer.mean(),

    scale: 2500,

    xProperty: 'system:time_start',

    seriesProperty: 'SITE'

  })

  .setOptions(title)

  .setChartType('ScatterChart');

// 打印图表,将其输出显示在控制台上

print(chart);

2)结果

这里roi以湖南省(如图2)为例,运行结果如图3所示。将鼠标移到散点图上就可以显示年平均降水量。

鼠标左键点击散点图右上角的箭头图标,可以保存为三种格式,分别是csv表格格式、svg和png图片格式,如图4所示。

​(图2)

(图3)

(图4)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Gee Explorer

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值