Google Earth Engine(GEE)制作APP界面

网友投稿 1336 2022-10-22

Google Earth Engine(GEE)制作APP界面

Google Earth Engine(GEE)制作APP界面

今天来简单分享下如何在GEE制作APP的界面

目标:

目标是制作一个界面,可以手动选择边界,来显示地表水,无需编程。

GEE实现代码

var gswYearly = ee.ImageCollection("JRC/GSW1_3/YearlyHistory"), admin2 = ee.FeatureCollection("FAO/GAUL_SIMPLIFIED_500m/2015/level2");// 设置显示面板var mainPanel = ui.Panel({ style: {width: '600px'}});var title = ui.Label({ value: '显示地表水', style: {'fontSize': '24px'}});//可以在面板上添加工具mainPanel.add(title)//将选择边界面板添加到显示地表水面板上var admin2Panel = ui.Panel()mainPanel.add(admin2Panel);// 添加区域名称的下拉菜单。// 创建ui.Selectvar filtered = admin2.filter(ee.Filter.eq('ADM0_NAME', 'Australia'))var admin2Names = filtered.aggregate_array('ADM2_NAME')// 定义选择函数,admin2Names.evaluate(function(names){ var dropDown = ui.Select({ placeholder: '选择边界', items: names, onChange: display }) admin2Panel.add(dropDown)})var display = function(admin1Name) { var selected = ee.Feature( filtered.filter(ee.Filter.eq('ADM2_NAME', admin1Name)).first()) var geometry = selected.geometry() Map.clear() Map.addLayer(geometry, {color: 'grey'}, admin1Name) Map.centerObject(geometry, 7) var gswYearFiltered = gswYearly.filter(ee.Filter.eq('year', 2020)) var gsw2020 = ee.Image(gswYearFiltered.first()).clip(geometry) var water2020 = gsw2020.eq(2).or(gsw2020.eq(3)).rename('water').selfMask() var visParams = {min:0, max:1, palette: ['white','blue']} Map.addLayer(water2020, visParams, '2020 Water')}Map.setCenter(135.60, -23.93, 5)ui.root.add(mainPanel);

运行显示界面如下:

可以在选择边界里,下拉菜单,选择行政区

显示效果如下:

GEE demo:

https://code.earthengine.google.com/40d6a917a6185a02a366d1802b84e0df

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:luogu2916 [USACO08NOV]
下一篇:Win10风格的UI框架。Windows10 style UI framework.
相关文章

 发表评论

暂时没有评论,来抢沙发吧~