目录
- 图层操作
- Map.addLayer()
- Map.centerObject()
- 直方图
- ui.Chart.image.histogram()
- 趋势线
- ui.Chart.image.series()
图层操作
Map.addLayer()
Map.addLayer 是 Google Earth Engine 中用于向地图添加图层的方法。它接受一个图像对象或图像集合作为参数,并将其添加到地图上显示。
Map.addLayer(image, visParams, name);
在这里,image 是要添加到地图上的图像对象或图像集合。visParams 是可选参数,用于指定图像的可视化参数,例如颜色、渲染方式等。name 也是可选参数,用于指定图层的名称。
以下是一个示例,演示了如何使用 Map.addLayer 方法向地图添加一幅 Landsat 影像:
// 创建一个 Landsat 影像
var image = ee.Image('LANDSAT/LC08/C01/T1_TOA/LC08_044034_20140318');
// 将图像添加到地图上显示
Map.addLayer(image, {
bands: ['B4', 'B3', 'B2'],
min: 0,
max: 0.3
}, 'Landsat image');
在这个示例中,我们首先创建了一个 Landsat 影像 image。然后,我们使用 Map.addLayer 方法将该影像添加到地图上显示。在可视化参数中,我们指定了影像的红、绿、蓝波段,并设置了最小和最大值来调整影像的显示范围。最后,我们还为图层指定了一个名称,即 ‘Landsat image’。
Map.centerObject()
Map.centerObject 是 Google Earth Engine 中用于将地图视图移动到指定的几何对象中心位置的方法。它接受一个几何对象作为参数,并将地图视图移动到该几何对象的中心位置。
直方图
ui.Chart.image.histogram()
ui.Chart.image.histogram 是 Google Earth Engine JavaScript API 中用于创建图像直方图的方法。它接受一个图像对象作为参数,并为图像的所有波段创建直方图。
以下是 ui.Chart.image.histogram 方法的一般用法:
var chart = ui.Chart.image.histogram(image, region, scale);
在这里,image 是要创建直方图的图像对象,region 是可选参数,用于指定计算直方图的区域范围,可以是点、线、面等几何对象。scale 也是可选参数,用于指定计算直方图时的分辨率。
调用 ui.Chart.image.histogram 方法后,将返回一个图表对象 chart,表示图像的直方图。
以下是一个示例,演示了如何使用 ui.Chart.image.histogram 方法创建图像的直方图:
// 创建一个 Landsat 影像
var image = ee.Image('LANDSAT/LC08/C01/T1_TOA/LC08_044034_20140318');
// 创建一个点几何对象,用于指定计算直方图的区域范围
var point = ee.Geometry.Point([-122.4449, 37.7536]);
// 创建图像的直方图
var chart = ui.Chart.image.histogram(image, point, 30);
// 设置图表的标题
chart.setOptions({
title: 'Histogram of Landsat image'
});
// 在控制台中打印直方图对象
print(chart);
在这个示例中,我们首先创建了一个 Landsat 影像 image。然后,我们创建了一个点几何对象 point,用于指定计算直方图的区域范围。接着,我们使用 ui.Chart.image.histogram 方法创建了图像的直方图,并指定了计算直方图时的分辨率为 30。最后,我们设置了图表的标题,并在控制台中打印了直方图对象。
趋势线
ui.Chart.image.series()
在 Google Earth Engine 中,ui.Chart.image.series 是一个用于生成时间序列图的用户界面模块。它用于可视化图像集合(Image Collection)中像素值随时间变化的趋势。以下是一些关键点的解释:
-
ui.Chart.image.series:这是创建时间序列图的用户界面模块的调用。
-
图像集合:通常,这个函数的第一个参数是一个图像集合,它包含了需要进行时间序列分析的多个图像。
-
空间坐标:该函数可以选择一个区域(Region of Interest),以便提取该区域内的像素值进行时间序列分析。这个区域可以是一个点、一个多边形等地理空间对象。
-
波段选择:在函数的参数中,你需要指定要绘制时间序列的波段。这可以是单个波段,也可以是多个波段的组合。
-
可选参数:除了上述的必须参数外,函数还可以接受一些可选参数,如时间范围、时间单位等,以便更精确地控制时间序列图的生成。
总的来说,ui.Chart.image.series 可以用于创建时间序列图,展示图像集合中某个区域内指定波段的像素值随时间的变化趋势,有助于对地表特征进行时间序列分析和监测。
var L8_chart = ui.Chart.image.series({
imageCollection: L8_COL.select('NDVI'),
region: shp,
reducer: ee.Reducer.mean(),
scale: 500
}).setOptions({
interpolateNulls: true,
lineWidth: 2,
title: 'Landsat8 NDVI Time Seires',
vAxis: {title: 'NDVI'},
hAxis: {title: 'Date'},
trendlines: { 0: {title: 'NDVI_trend',type:'linear', showR2: true, color:'red', visibleInLegend: true}}
});
print(L8_chart);