Search code examples
javascriptgoogle-earth-engine

Error while trying to code in Google Earth Engine using Javascript


I got this code but when I run it gives error message

"L8" is not defined in this scope. in , line 11 in , line 30

The code I'm using is like this

var RGB_vis = {min: 0, max: 0.3, bands: ['B4', 'B3', 'B2']};
var filtered = L8
.filterDate('2019-01-01', '2019-12-31')
.filterBounds(geometry)
.sort('CLOUD_COVER', true);
var image = ee.Image(filtered.first());
Map.addLayer(image, RGB_vis,'RGB' );

// Compute the Normalized Difference Vegetation Index (NDVI).
var nir = image.select('B5');
var red = image.select('B4');
var ndvi = nir.subtract(red).divide(nir.add(red)).rename('NDVI');
// Display the result.
Map.centerObject(image, 9);
var ndviPara ={min: -1, max: 1, palette: ['blue', 'white', 'green']};
Map.addLayer(ndvi, ndviPara, 'NDVI image');

Solution

  • You first need to define the L8 variable by inserting the Landsat 8 ImageCollection:

    var L8 = ee.ImageCollection('LANDSAT/LC08/C01/T1_TOA')
    var RGB_vis = {min: 0, max: 0.3, bands: ['B4', 'B3', 'B2']};
    var filtered = L8
    .filterDate('2019-01-01', '2019-12-31')
    .filterBounds(geometry)
    .sort('CLOUD_COVER', true);
    var image = ee.Image(filtered.first());
    Map.addLayer(image, RGB_vis,'RGB' );
    
    // Compute the Normalized Difference Vegetation Index (NDVI).
    var nir = image.select('B5');
    var red = image.select('B4');
    var ndvi = nir.subtract(red).divide(nir.add(red)).rename('NDVI');
    // Display the result.
    Map.centerObject(image, 9);
    var ndviPara ={min: -1, max: 1, palette: ['blue', 'white', 'green']};
    Map.addLayer(ndvi, ndviPara, 'NDVI image');