GEE:提取多个点的时间序列数据,保存为csv格式(以NDVI为例)

37 篇文章 91 订阅
25 篇文章 49 订阅

这几天做了一些提取一个点时间序列的工作,本文第一个代码记录了提取三个点的NDVI值时间序列的代码,并且记录了以csv格式保存结果到本地的方法。第二个代码记录了将一个点的时间序列以折线图的形式打印在控制台中。


一、输入点坐标

输入三个点的数据。

二、结果展示

每一个点的LAI时间序列都保存在了csv表格之中,如下图所示。‘索引’对应点的索引,代码中已经将点的列表打印出来,可以对应索引检索。每一列都是时间。

三、代码实现

主要的代码如下所示,可以直接运行。

//将点坐标转换成FeatureCollection,这里添加三个点
var col=ee.List([[116.379, 39.98], [116.116, 39.896], [116.5393, 39.9414]]);
var point = ee.FeatureCollection(ee.Geometry.MultiPoint(col));
print("point", point)

//加载矢量图层
Map.centerObject(point);
Map.addLayer(point, {}, 'geometry')

//影像集合筛选
var dataset = ee.ImageCollection("MODIS/061/MOD13A2")
                .filterDate('2004-01-01', '2014-12-31')
                .select('NDVI')
                .toBands()

//统计其给出的样本点的NDVI
var pixelValues = dataset.sampleRegions({
			    collection: point,
			    scale: 30, //每个点的缓冲区大小
});

print("NDVIValue", pixelValues)

//将影像导出
Export.table.toDrive({
			    collection: pixelValues,
			    description:"NDVIPointsTimeSerises30m",
			    folder: "NDVITS",
			    fileFormat: "CSV"
});

四、打印时间序列到控制台

红色箭头按钮下载时间序列数据到,csv。

代码如下所示:

var point = ee.Geometry.Point([116.379, 39.98]);

//影像集合筛选
var dataset = ee.ImageCollection("MODIS/061/MOD13A2")
                .filterDate('2004-01-01', '2014-12-31')
                .select('NDVI')
                
// 创建折线图
var chart = ui.Chart.image.series({
			    imageCollection: dataset.select('NDVI'),
			    region: point,
			    //reducer: ee.Reducer.max(),
			    scale: 500
}).setOptions({title: 'NDVI'});

// 可视化折线图
print(chart);

五、代码链接

三个点的NDVI值时间序列:https://code.earthengine.google.com/cb661539564f4704db2a5acb3f2504ab?noload=true
打印一个点的时间序列到控制台:https://code.earthengine.google.com/9c232090cc07e170514c50ae0d379d3f?noload=true

  • 11
    点赞
  • 84
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 50
    评论
### 回答1: 在GEE平台中,可以使用以下代码来输出2020年四川省每个月的Landsat 8影像的NDVI: ``` var region = ee.FeatureCollection("users/你的用户名/你的文件夹名称/四川省边界"); // 请将“你的用户名”和“你的文件夹名称”替换为你的实际信息 var dataset = ee.ImageCollection('LANDSAT/LC08/C01/T1_TOA') .filterBounds(region) .filterDate('2020-01-01', '2020-12-31') .filter(ee.Filter.calendarRange(1,12,'month')); // 计算NDVI var addNDVI = function(image) { var ndvi = image.normalizedDifference(['B5', 'B4']).rename('NDVI'); return image.addBands(ndvi); }; dataset = dataset.map(addNDVI); // 按月份分组 var monthlyNDVI = dataset.map(function(image) { var year = ee.Number.parse(image.date().format('YYYY')); var month = ee.Number.parse(image.date().format('MM')); var dateString = ee.String(ee.String(year).cat('-').cat(ee.String(month).cat('-01'))); return image.set('month', dateString).select('NDVI'); }).select('NDVI').max().float(); // 输出月时相的NDVI图像 var months = ee.List.sequence(1, 12); var byMonth = ee.ImageCollection.fromImages( months.map(function (m) { return monthlyNDVI.updateMask(monthlyNDVI.bandNames().contains(ee.String(ee.Number(m).int().format()))); }).flatten() ); // 可视化 var visParams = {min: 0, max: 1, palette: ['FFFFFF', 'CE7E45', 'DF923D', 'F1B555', 'FCD163', '99B718', '74A901', '66A000', '529400', '3E8601', '207401', '056201', '004C00', '023B01', '012E01', '011D01', '011301']}; Map.addLayer(byMonth, visParams, 'Monthly NDVI'); ``` 在代码中,我们首先定义了区域为四川省的FeatureCollection,然后筛选出2020年的Landsat 8数据集。接着,我们使用normalizedDifference函数计算NDVI,并按月份分组。最后,我们使用ImageCollection.fromImages函数将每个月的NDVI图像合并成一个ImageCollection,并可视化输出。 需要注意的是,代码中的region变量需要根据你的实际情况修改。你可以在GEE平台中使用“绘制矩形”工具来获取你需要的区域的FeatureCollection。 ### 回答2: 使用GEE平台中的Landsat数据输出2020年四川省的月时相的NDVI相对较为简单。首先,我们需要设置数据范围和时间范围。 1. 设置区域为四川省:可以使用GEE平台的图形用户界面,在图层上选择四川省的边界或者根据经纬度设置区域范围。 2. 时间范围设为2020年:在GEE平台上选择时间控件,并将开始日期设置为2020年1月1日,结束日期设置为2020年12月31日。 3. 选择Landsat影像数据:使用GEE平台的数据目录,检索并选择相应的Landsat影像数据集。在这种情况下,我们将使用Landsat 8数据集。 4. 计算每个月的NDVI:使用GEE平台的计算工具,可以计算每个月的NDVI并输出结果。NDVI(归一化差异植被指数)是通过计算近红外和红光波段之间的差异来评估植被生长状况的指标。 5. 导出结果:在计算完每月的NDVI后,可以使用GEE平台提供的导出工具将结果导出为栅格数据或其他格式,以便进行后续分析或用途。 通过以上步骤,可以使用GEE平台中的Landsat数据输出2020年四川省的月时相的NDVI。这将有助于了解该地区每个月的植被生长变化情况,并为相关研究和决策提供有价值的信息。 ### 回答3: 在GEE平台上,要输出2020年四川省的月时相NDVI数据,可以按照以下步骤进行操作: 1. 打开GEE平台并登录账号。 2. 在“数据目录”中搜索并添加"Landsat 8 Collection 2 Level 2"数据集。 3. 在地图界面上,选择四川省的范围,并缩小范围以便快速加载数据。 4. 在地图界面上选择时间范围为2020年的数据。 5. 击“添加图层”按钮,在搜索框中输入“Normalized Difference Vegetation Index”并选择相应的影像数据集。 6. 配置NDVI图层的参数,例如设置波段为红波段和近红外波段。 7. 击“添加图层”按钮,重复以上步骤添加多个月份的NDVI图层,以获得月时相的NDVI数据。 8. 将不同月份的NDVI图层命名为对应的月份方便管理。 9. 击“导出”按钮,选择输出格式和输出路径,确认导出参数后开始导出数据。 10. 等待数据导出完成,然后下载导出的月时相NDVI数据。 以上是使用GEE平台中的Landsat数据输出2020年四川省的月时相NDVI的步骤。通过该方法,可以获得各个月份的NDVI数据图层,用于研究植被生长的季节性变化和评估环境变化对植被的影响。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_养乐多_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值