网站建设营销推广工作,superstore wordpress主题,官方网站下载地址,wordpress另一更新进行中今天带来的有关蒸散发数据的下载代码#xff0c;蒸散发数据在气象气候#xff0c;农业干旱监测等领域应用广泛#xff0c;那么在GEE上如何方便快捷获取蒸散发数据呢#xff1f;今天跟着小编分享代码#xff0c;快来学习吧#xff01;#xff01;
A.定义研究区域
//定义…
今天带来的有关蒸散发数据的下载代码蒸散发数据在气象气候农业干旱监测等领域应用广泛那么在GEE上如何方便快捷获取蒸散发数据呢今天跟着小编分享代码快来学习吧
A.定义研究区域
//定义研究区域
var geometry ee.FeatureCollection(users/hesuixinya511/ganzhou);
//聚焦研究区域
Map.centerObject(geometry,6);
这里小编以赣州市作为研究区域。
B.影像调用与数据筛选
//加载MODIS蒸发量数据按照2001-2020年赣州市的研究区域范围完成数据筛选和裁剪
var collection ee.ImageCollection(MODIS/006/MOD16A2).filter(ee.Filter.date(2001-01-01, 2023-12-31)).filterBounds(geometry).select(ET);//选择PET潜在蒸发量波段数据
小编选择的是MODIS的数据产品为MOD16A2该数据产品提供ET、PET等近20年的数据以下显示的是该数据的波段信息我们挑了ET即总的蒸散发作为例子 C.年度蒸发量数据合成
//合成年总蒸发量数据
var years ee.List.sequence(2001, 2023);
var collectYear ee.ImageCollection(years.map(function(y) {var start ee.Date.fromYMD(y, 1, 1);var end start.advance(12, month);return collection.filterDate(start, end).reduce(ee.Reducer.sum()).float().set(system:time_start,y).set(year,y);
}));
print(collectYear);
D.影像批量裁剪
//利用赣州市的行政边界裁剪蒸散发数据
var clip_CollectioncollectYear.map(function(img){return img.clip(geometry);
});
print(clip_Collection);
E.影像的可视化
var palettes require(users/gena/packages:palettes);
var evapotranspirationVis {min: 0,max: 300,palette: palettes.colorbrewer.RdYlBu[11]
};
Map.addLayer(clip_Collection.median(), evapotranspirationVis, Evapotranspiration); F.年度时间序列展示
//时间序列展示
var Yearly_Chart ui.Chart ui.Chart.image.series({imageCollection:clip_Collection.select(ET_sum),region:geometry,reducer:ee.Reducer.mean(),scale:500,xProperty:year,
}).setOptions({interpolateNulls:true,lineWidth:2,pontSize:3,title:PET Yearly Series,vAxis:{title:PET},hAxis:{title:Date},trendlines:{0:{title:PET_trend,type:linear,showR2:true,color:red,visibleInLegend:true}}
});
print(Yearly_Chart); G.影像批量下载
//定义下载影像函数
function exportImage(image, region, fileName) { Export.image.toDrive({ image: image, description: Drive-fileName,//影像名称 fileNamePrefix: fileName, folder: GanzhouET, //文件夹名称 scale: 500, region: region, maxPixels: 1e13, crs: EPSG:4326 });
}
//生成时间序列按照循环迭代下载数据集的每一张影像
var indexList clip_Collection.reduceColumns(ee.Reducer.toList(), [system:index]).get(list);
print(indexList, indexList);
indexList.evaluate(function(indexs) { for (var i0; iindexs.length; i) { var image clip_Collection.filter(ee.Filter.eq(system:index, indexs[i])).first(); exportImage(image, geometry, 20indexs[i1]); }
}); H.导出为CSV格式
//导出为CSV格式
var table ee.FeatureCollection(clip_Collection.map(function(image){var date image.get(year);return ee.Feature(null,{date:date,value:image.reduceRegion(ee.Reducer.mean(),geometry,500).get(ET_sum)});
}));
Export.table.toDrive({collection:table,description:Yearly_series,folder:ET,fileNamePrefix:ET_Year,fileFormat:CSV
}); I.本篇案例完整代码
//定义研究区域
var geometry ee.FeatureCollection(users/hesuixinya511/ganzhou);
//聚焦研究区域
Map.centerObject(geometry,6);
//加载MODIS蒸发量数据按照2001-2020年赣州市的研究区域范围完成数据筛选和裁剪
var collection ee.ImageCollection(MODIS/006/MOD16A2).filter(ee.Filter.date(2001-01-01, 2023-12-31)).filterBounds(geometry).select(ET);//选择PET潜在蒸发量波段数据
//合成年总蒸发量数据
var years ee.List.sequence(2001, 2023);
var collectYear ee.ImageCollection(years.map(function(y) {var start ee.Date.fromYMD(y, 1, 1);var end start.advance(12, month);return collection.filterDate(start, end).reduce(ee.Reducer.sum()).float().set(system:time_start,y).set(year,y);
}));
print(collectYear);
//利用赣州市的行政边界裁剪蒸散发数据
var clip_CollectioncollectYear.map(function(img){return img.clip(geometry);
});
print(clip_Collection);
var palettes require(users/gena/packages:palettes);
var evapotranspirationVis {min: 0,max: 300,palette: palettes.colorbrewer.RdYlBu[11]
};
Map.addLayer(clip_Collection.median(), evapotranspirationVis, Evapotranspiration);
//时间序列展示
var Yearly_Chart ui.Chart ui.Chart.image.series({imageCollection:clip_Collection.select(ET_sum),region:geometry,reducer:ee.Reducer.mean(),scale:500,xProperty:year,
}).setOptions({interpolateNulls:true,lineWidth:2,pontSize:3,title:PET Yearly Series,vAxis:{title:PET},hAxis:{title:Date},trendlines:{0:{title:PET_trend,type:linear,showR2:true,color:red,visibleInLegend:true}}
});
print(Yearly_Chart);
//定义下载影像函数
function exportImage(image, region, fileName) { Export.image.toDrive({ image: image, description: Drive-fileName,//影像名称 fileNamePrefix: fileName, folder: GanzhouET, //文件夹名称 scale: 500, region: region, maxPixels: 1e13, crs: EPSG:4326 });
}
//生成时间序列按照循环迭代下载数据集的每一张影像
var indexList clip_Collection.reduceColumns(ee.Reducer.toList(), [system:index]).get(list);
print(indexList, indexList);
indexList.evaluate(function(indexs) { for (var i0; iindexs.length; i) { var image clip_Collection.filter(ee.Filter.eq(system:index, indexs[i])).first(); exportImage(image, geometry, 20indexs[i1]); }
});
//导出为CSV格式
var table ee.FeatureCollection(clip_Collection.map(function(image){var date image.get(year);return ee.Feature(null,{date:date,value:image.reduceRegion(ee.Reducer.mean(),geometry,500).get(ET_sum)});
}));
Export.table.toDrive({collection:table,description:Yearly_series,folder:ET,fileNamePrefix:ET_Year,fileFormat:CSV
});
关于GEE下载蒸散发数据的代码到这里就结束了如果对你有帮助不要忘记了给小编点赞哦
代码链接https://code.earthengine.google.com/c1c7de2ae0a8a4992f4fe1051b71ec98
谢谢大家下期再见