Google earth engine如何实现我们时间列表的排列和选取

举报
此星光明 发表于 2022/07/30 16:45:47 2022/07/30
【摘要】 ​这个教程的主要目的是解决我们一个非常简单而且实用的功能,原有问题是这应该很简单,但我没有找到好的解决方案。我想创建一个包含两个日期中较早日期的变量,但我还没有找到一种方法来比较两个日期并提取较早的日期,因为 .min() 或 .first() 不适用于列表。 本文需要利用几个函数:ee.Date.fromYMD(year, month, day, timeZone)返回一个给定年、月、日的...

这个教程的主要目的是解决我们一个非常简单而且实用的功能,原有问题是这应该很简单,但我没有找到好的解决方案。我想创建一个包含两个日期中较早日期的变量,但我还没有找到一种方法来比较两个日期并提取较早的日期,因为 .min() 或 .first() 不适用于列表。 

本文需要利用几个函数:

ee.Date.fromYMD(year, month, day, timeZone)
返回一个给定年、月、日的Date。

参数。
年 (整数)
月 (整数)
day (整数)
timeZone (String, default: null)。
时区(例如 "America/Los_Angeles");默认为UTC。

返回。日期

get(unit, timeZone)
返回这个日期的指定单位。

参数。
this:date (Date)
单位(字符串)。
年"、"月"(返回1-12)、"周"(1-53)、"日"(1-31)、"小时"(0-23)、"分钟"(0-59)或 "秒"(0-59)之一。

timeZone(字符串,默认为空)。
时区(例如:'America/Los_Angeles');默认为UTC。

返回。Long

sort(keys)
将列表按升序排序。如果提供了'keys'参数,那么它将被首先排序,'list'中的元素将以相同的顺序排列。

参数。
this:list (列表)。
要排序的列表。

keys (List, default: null):
可选的键值,用于排序。如果提供'keys',它的长度必须与'list'相同。

返回。列表

先看代码:

var date = ee.Date.fromYMD(2022, 9, 30);
var date1 = ee.Date.fromYMD(2021, 6, 30);
var date2 = ee.Date.fromYMD(2020, 5, 30);
var date3 = ee.Date.fromYMD(2019, 4, 30);
var date3 = ee.Date(Date.now());
var list = ee.List([date, date1, date2, date3]).sort();
var get0 = list.get(0)
print(list); 
print(get0); 
print("get3", list.get(3));

整体的解决思路就是将列表之合并,合并之后按照sort进行筛选,就可以得到时序的列表,而且是列表由低到高排好序的,所以我们只要列表被合并,您就可以排序然后选择第一个(或第 n 个)索引。如果您想将列表分开,然后比较并找到两个列表之间的相对位置(小于或大于),就可以了。

我们的默认列表:

我们的排序后的列表:

 我们用get获取index,也就是列表的位置,get0 就代表着获取列表中的第一个参数:

 这里时间是毫秒的表达过程。

 同样我们也可将影像来进行获取,但是你得获取系统的id值来进行加载,或者我们可以进行云影像来筛选进行加载等等可以利用。

​这个公开的github可以查看:GitHub - jdbcode/Snazzy-EE-TS-GIF: Apps for creating Landsat time series animations

(1307条消息) Google Earth Engine(GEE)——再GEE中为图像几何动画添加文本和图例信息_此星光明的博客-CSDN博客

(1307条消息) Google earth engine——在线展示动图ui.Thumbnail_此星光明的博客-CSDN博客

​往期推荐:

Error: Image.clipToBoundsAndScale, argument 'input': Invalid

Google Earth Engine ——Landsat 5 TOA数据集中的QA_PIXEL和QA_RADSAT波段

Google Earth Engine(GEE)——神级辅助插件(开放地球引擎扩展 (OEEex))

Google Earth Engine——1980-至今全球50米压力、2 米温度、地表压力数据集

全球森林损失量数据集Hansen Global Forest Change v1.8 (2000-2020)

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。