GEE 代码学习笔记一
(GEE 基于JavaScript语言和python语言,我记录的是JavaScript语言)
1.GEE 快速入门 quick start.
2.基本语句
- 简单输出
print('Hello world!');
- 输出影像的元数据
print(ee.Image('LANDSAT/LC08/C01/T1/LC08_044034_20140318'));
- 加载影像到地图上(将影像加载到地图上,便可可视化地理数据)
用Map.addLayer() 方法实现。
// 加载影像
var image = ee.Image('LANDSAT/LC08/C01/T1/LC08_044034_20140318');
// Center the map on the image.
Map.centerObject(image, 9);
// Display the image.
Map.addLayer(image);
Map.centerObject(),是一个放大或缩小的水平,数字越大,尺度越大(zoom in)。
还可以附加参数配置显示参数Map.addLayer图层(). 例如:
// Load the image from the archive.
var image = ee.Image('LANDSAT/LC08/C01/T1/LC08_044034_20140318');
// Define visualization parameters in an object literal.
var vizParams = {
bands: ['B5', 'B4', 'B3'], min: 5000, max: 15000, gamma: 1.3};
// Center the map on the image and display.
Map.centerObject(image, 9);
Map.addLayer(image, vizParams, 'Landsat 8 false color');
- 用Map.addLayer()加载矢量数据
var counties = ee.FeatureCollection('TIGER/2016/Counties');
Map.addLayer(counties, {
}, 'counties');
- 加载栅格数据
var collection = ee.ImageCollection('LANDSAT/LC08/C01/T1');
注意:e.Image()加载单幅栅格影像,ee.ImageCollection ()加载一定时间段的即连续的影像,后面会细细记录。
- 确定研究区域,当研究区是一个点时,比如站点
var point = ee.Geometry.Point(-122.262, 37.8719);
括号里内容是经纬度。
- 根据时间筛选数据
var start = ee.Date('2014-06-01');
var finish = ee.Date('2014-10-01');
- 综上,筛选满足自己需求的数据
var filteredCollection = ee.ImageCollection('LANDSAT/LC08/C01/T1')
.filterBounds(point)
.filterDate(start, finish)
.sort('CLOUD_COVER', true);
.sort()的内容根据数据元数据写
ee.ImageCollection()加载的影像很多,可能速度慢。且影像集通过list存储在feature中,因此可以通过List()选择。
var first = filteredCollection.first();
以下操作将创建一个过滤器,使用它过滤FeatureCollection并显示结果。
// Load a feature collection.
var featureCollection = ee.FeatureCollection('TIGER/2016/States')