Lesson 1, Topic 3
In Progress

Monitoring Land Surface Temperature with MODIS Data

Lesson Progress
0% Complete

Data and Background

You will learn how to make a time series of land surface temperature with MODIS Data. First off, you are briefly introduced to MODIS Land Surface Temperature Dataset.

YouTube

By loading the video, you agree to YouTube’s privacy policy.
Learn more

Load video

Data and background

Land Surface Temperature

You’ll now work with an image collection instead of a single image. Learn how to prepare your dataset and how to convert specific parameters like the given temperature values into degrees celsius. After completing these steps, you’ll be able to show the significant difference in land surface temperatures of rural areas compared to built-up areas. Furthermore, you’ll be able to visualize the change of surface temperature over a specific period for a certain area of interest.

You can find the code used in this video below or by following this GEE Link:

https://code.earthengine.google.com/1aa464e87f387a4f5cf0ae0f3dbb30f5

YouTube

By loading the video, you agree to YouTube’s privacy policy.
Learn more

Load video

Land surface temperature

Code used in this example

//Load MODIS/MOD11A2
var collection = ee.ImageCollection(‘MODIS/006/MOD11A2’)
.filterDate(‘2001-01-01’, ‘2018-12-31’)
.filter(ee.Filter.dayOfYear(181, 240)) //select summer months
.filterBounds(geometry)
print(collection);

//Function to transform T in Kelvin using scaling factor as provided with the link
function convertToC(image){
var result = image.multiply(0.02)
.subtract(273.15);
result = result.copyProperties(image, [‘system:time_start’]) ;
return result;
}
var collectionCelcius = collection.map(convertToC);

// Calculate mean LST
var LSTmean = collectionCelcius.select(‘LST_Day_1km’).mean();
Map.addLayer(LSTmean.clip(geometry), {
min: 20, max: 40,
palette: [‘green’, ‘yellow’, ‘darkorange’, ‘red’]},
‘Mean temperature, 2015’);

//Create LST vs time for an aoi
var plot = Chart.image.series(collectionCelcius.select(‘LST_Day_1km’), aoi, ee.Reducer.mean(), 1000)
.setChartType(‘ScatterChart’)
.setOptions({
title: ‘LST trend temporally aggregated’,
fontSize: 12,
lineWidth: 0,
pointSize: 1,
legend: { position: ‘bottom’ },
vAxis: {title: ‘LST’},
hAxis: {title: ‘Date’},
});

print(plot);

Click the ‘Submit’ Button to rate this topic.