GEE学习计划 Day·4

跟着知乎大佬 无形的风 学GEE Day·4
大纲:UI组件总述、模块导入、资源导出、UI组件、使用矢量资源

一、UI组件总述

GEE 的UI组件主要包括:按钮、复选框、文本、面板容器、滑块(进度条)、文本输入框、下拉列表、图表、缩略图、地图、根节点等
详见:https://zhuanlan.zhihu.com/p/29763414

二、模块导入(公共库的构建与应用)

对于一些会反复使用的公共代码,编写入公共库,可以简化代码编写。

//公共库要加入exports
exports.ndvi = function(img){
 var ndvi = img.normalizedDifference(["B5","B4"]);
 return ndvi
 }

将上述代码文件存入script文件夹下,在调用时用require引用。

var module_f = require('path');
var result = module_f.ndvi(img);

三、资源导出

1、导出单张影像到Drive:
使用Export.image.toDrive({
image: imageName,
description:‘imageToDrive’,
scale:30,
region: regiongeometry
});
2、对于多张影像写循环导出到Drive中,主要用colList = collection.size().getInfo()获取符合条件的影像数量,用for循环批量导出,文件名使用Img.id()获取,边界几何大小通过img.geometry().bounds()获取

详见:https://zhuanlan.zhihu.com/p/30004153

四、UI组件

1、ui.Label
参数:value、style
方法:getValue()、setValue(value)、style()
定义一个label

var label1 = ui.Label({
 value:"this is label1",
 style:{
  color:"#ff0000",
  backgroundColor:"#00ff00",
  border:"3px solid black"
  }
  //红色字体、绿色背景、边界3px实心黑色
  print(label1.getValue());
  label1.setValue("change value");
  //常用style包括:backgroundColor、border、color、margin、shown、height、width、padding、fontsize、textAlign等
  

2、ui.Button
参数:label、onClick、disabled、style
方法:getDisabled()、getLabel()、onClick(callback)、setDisabled(disabled)、setLabel(label)、style()、unlisten(idOrType)

var btn = ui.Button("button1");
btn.onClick(function(){
 print("click button1");
 });
 print(btn);
 btn.setDisabled(true)

3、ui.Checkbox
参数:label,value,onChange,disabled,style
方法:getDisabled()、getValue()、onChange(callback)、setDisabled(disabled)、setValue(value,trigger)、style()、unlisten(idOrType)

var checkbox = ui.Checkbox("checkbox1",true);
checkbox1.onChange(function(checked){
print("1 select box:"+checked);
})

4、ui.Thumbnail
参数:image,params,onClick,style
方法:getImage(),getParams,onClick(callback),setImage(image),setParams(params),style(),unlisten(idOrType)

5、ui.Textbox
参数:placeholder,value,onChange,disabled,style
方法:getDisabled(), getPlaceholder(), getValue(), onChange(callback), setDisabled(disabled), setPlaceholder(placeholder), setValue(value, trigger), style(), unlisten(idOrType)

6、ui.Slider
参数:min, max, value, step, onChange, direction,disabled, style
方法: getDisabled(), getMax(), getMin(), getStep(), onChange(callback), onSlide(callback), setDisabled(disabled), setMax(value), setMin(value),setStep(value), setValue(value,trigger), style(), unlisten(idOrType)

7、ui.Select
参数:items(数据为字典类型), placeholder, value, onChange, disabled, style
方法:getDisabled(), getPlaceholder(), getValue(), items(), onChange(callback), setDisabled(disabled), setPlaceholder(placeholder), setValue(value, trigger), style(), unlisten(idOrType)

所有组件在使用时都需要先定义,再print,才能显示在console中。
详见官方文档

五、使用矢量资源

以行政区划边界对图像进行裁剪,首先需要上传矢量数据,若上传的数据为包含多个地区的数据,则需要选择目标地区,用ee.Filter.eq()函数筛选目标地区。
创建一个待裁剪的图层,使用.clip(city)方法裁剪对应区域并addLayer显示,需要显示边界时创建空白Image(var empty = ee.Image().toByte()),然后绘制轮廓empty.paint({featureCollection:city,color:0,width:3});
Map.addLayer(outline, {palette: “ff0000”},“outline”)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值