Annual Time Series NDVI using MODIS Data in Google Earth Engine (Sample – Nigeria)

What is NDVI?

The Normalized Difference Vegetation Index (NDVI) is referred to as the continuity index to the existing National Oceanic and Atmospheric Administration-Advanced Very High-Resolution Radiometer (NOAA-AVHRR) derived NDVI.

The NDVI is calculated from these individual measurements as follows:

NDVI= (NIR-Red) \ (NIR+Red)

In this tutorial, we will look at a simple method to calculate Annual NDVI Time Series for Ethiopia (sample area). You can edit the code and calculate NDVI for any country. In addition, we will learn to export the data to our drive so that we can download and use it other processing tool such as ArcGIS.

About Data

MOD13Q1.006 Terra Vegetation Indices 16-Day Global 250m

For this work, the MOD13Q1.006 Terra Vegetation Indices 16-Day Global 250m was used. The NASA LP DAAC at the USGS EROS Center archives this product and can be downloaded from this website. This product provides a Vegetation Index (VI) value at a per pixel basis.

Annual MODIS NDVI 2015 (Nigeria)

This product is generated from the MODIS/MCD43A4 surface reflectance composites.

Here is the code:

var countries = ee.FeatureCollection("ft:1tdSwUL7MVpOauSgRzqVTOwdfy17KDbw-1d9omPw")
var country_name = ['Ethiopia'] // Change the country name here. 
var region = countries.filter(ee.Filter.inList('Country', country_name));
Map.centerObject(region,7);  //Zoom to Study area

// Choose country using GEE Feature Collection
var countries = ee.FeatureCollection("ft:1tdSwUL7MVpOauSgRzqVTOwdfy17KDbw-1d9omPw")
var country_name = ['Ethiopia']
var region = countries.filter(ee.Filter.inList('Country', country_name));
Map.centerObject(region,7);  //Zoom to Study area

// collect data and filter by dates

var modisNDVI = ee.ImageCollection('MODIS/MCD43A4_NDVI');

//Image collection for NDVI for all years, one value per month
var collection05 = ee.ImageCollection(modisNDVI.filterDate('2015-01-01', '2016-12-31'));
var collection01 = ee.ImageCollection(modisNDVI.filterDate('2016-01-01', '2016-12-31'));

// clip to specified region
var clipped05 = collection05.mean().clip(region)
var clipped01 = collection01.mean().clip(region)

//charts//
// Long-Term Time ersies
var TS5 = ui.Chart.image.seriesByRegion(collection05, region, ee.Reducer.mean(), 'NDVI', 500, 'system:time_start').setOptions({
   title: 'NDVI Long-Term Time Series',
      vAxis:{title:'NDVI'},
});
print(TS5);

//Short-Term Time Series
var TS1 = ui.Chart.image.seriesByRegion(collection05, region, ee.Reducer.mean(), 'NDVI', 500, 'system:time_start').setOptions({
      title: 'Short-Term Time Series',
      vAxis:{title:'NDVI'},
});
print(TS1);

//Add to map
Map.addLayer(clipped01, {min: 0.0, max:1, palette: ['FFFFFF', 'CC9900', '33CC00','009900','006600','000000']}, 'Annual MODIS NDVI 2015');
Map.addLayer(clipped05, {min: 0.0, max:1, palette: ['FFFFFF', 'CC9900', '33CC00','009900','006600','000000']}, 'Annual MODIS NDVI 2016');

The short-term and long-term time series charts are listed below:

16 thoughts on “Annual Time Series NDVI using MODIS Data in Google Earth Engine (Sample – Nigeria)”

  1. Pingback: Display Natural Color, Color Infrared (Vegetation), Healthy Vegetation, and Vegetation Analysis Maps in a Single Screen using Simple Codes in Google Earth Engine – Study Area (Ethiopia) – DINESH SHRESTHA

  2. Pingback: Add Legends and Title to your Map in GEE – DINESH SHRESTHA

  3. Pingback: Earth Engine App: Take your GEE expertise to next level. – DINESH SHRESTHA

  4. Pingback: Develop a Harmonic Model: Original vs Fitted NDVI values (Study Area: Thailand) – DINESH SHRESTHA

  5. Pingback: Using Hansen Global Forest Change Data to determine Forest Cover, Forest Gain, and Forest Loss (Study Area: Malaysia) – DINESH SHRESTHA

  6. Pingback: Make your map look Artistic – Add Grid Lines in your Map (Study Area: Canada) – DINESH SHRESTHA

  7. Pingback: Night Light Maps (Study Area: South Asia) – DINESH SHRESTHA

  8. Pingback: How to generate Histogram in Google Earth Engine? – DINESH SHRESTHA

  9. Pingback: Using 2001 MODIS Land Cover Type Yearly Global 500m Data to Determine the Land-Cover Analysis (Study Area: Mexico) – DINESH SHRESTHA

  10. Pingback: Learn How to Add two charts next to the map to interactively display a time-series of NDVI and reflectance for each click on the map? – DINESH SHRESTHA

  11. Pingback: Create a Chart to show Landsat 8 TOA Spectra at three points near Mumbai City – DINESH SHRESTHA

  12. Pingback: Learn how to calculate and export 90th Percentile Annual NDVI for years 1985-2019 using Landsat 8, 7, and 5 scenes (Study Area: Turkey) – DINESH SHRESTHA

  13. Pingback: Use 2018 Landsat 8 Scenes for Land Cover Classification in Google Earth Engine (Study Area: Dubai) – DINESH SHRESTHA

  14. Pingback: Land Cover Change Analysis between 1999 and 2018 in GEE (Study Area: Mumbai) – DINESH SHRESTHA

  15. Pingback: Time-lapse: Animate 30m Landsat images generated 90th percentile Annual NDVI from 1999 to 2018 (Study Area: South America) – DINESH SHRESTHA

  16. Ricardo Urizandi

    Thanks for the article. If I have a point shape file, how can I extract NDVI info fom 2000 to 2019 in a monthly basis for each particular poit. Thanks in advance

Leave a Reply

%d bloggers like this: