今天北京下了很大的雨,来分享下如何在GEE进行降水量的趋势分析
目标:
调用降水量数据,利用计算得出的逐月的降水量的均值,生成2015年至2020年降水量的统计图
GEE实现代码:
var roi = ee.FeatureCollection("users/lilei655123/shanxi"),
chirps = ee.ImageCollection("UCSB-CHG/CHIRPS/PENTAD");
Map.centerObject(roi,7)
var styling = {color:"red",fillColor:"00000000"};
Map.addLayer(roi.style(styling),{},"geometry")
// 设置起始时间
var startyear = 2015;
var endyear = 2020;
var startdate = ee.Date.fromYMD(startyear,1,1);
var enddate = ee.Date.fromYMD(endyear,12,31)
// 设置年份list
var years = ee.List.sequence(startyear,endyear);
var months = ee.List.sequence(1,12);
// 筛选数据
var Pchirps = chirps.filterDate(startdate, enddate)
// 按时间顺序降序排列
.sort('system:time_start', false)
.filterBounds(roi)
.select("precipitation");
// 计算每个月的降水量
var MonthlyChirps = ee.ImageCollection.fromImages(
years.map(function (y) {
return months.map(function(m){
var w = Pchirps.filter(ee.Filter.calendarRange(y, y, 'year'))
.filter(ee.Filter.calendarRange(m, m, 'month'))
.sum();
return w.set('year', y)
.set('month', m)
.set('system:time_start',ee.Date.fromYMD(y,m,1))
.set('date', ee.Date.fromYMD(y,m,1))
});
}).flatten());
var mySample = ee.FeatureCollection(MonthlyChirps.map(function(img){
var myimg = img.reproject('EPSG:32648',null,5000);
var time = myimg.get('date');
var ft = ee.Image(myimg).sampleRegions
({
collection: roi,
properties : ['Stations'],
scale: 5000
}).map(function(f) {return f.set('date', img.get('date'))})
return ft;
})).flatten();
// 定义表
var title = {
title: 'Rainfall',
hAxis: {title: '时间'},
vAxis: {title: '降水量(mm)'},
};
var chart = ui.Chart.image.seriesByRegion(
MonthlyChirps, roi, ee.Reducer.mean(), 'precipitation', 5000, 'system:time_start', 'station')
.setOptions(title);
// 输出结果
print(chart)
结果展示:
可以在统计图上看到,2015年至2020年每个月降水量的均值
感谢关注,欢迎转发!
声明:仅供学习使用!
GEE demo:
https://code.earthengine.google.com/54f2b785c1f33a7420699a4b082d9d91
希望关注的朋友们转发,如果对你有帮助的话记得给小编点个赞或者在看!
## ****更多内容请关注微信公众号“生态遥感监测笔记”**