Uncomment the following line to install geemap if needed.
# !pip install geemap
import ee
import geemap
Map = geemap.Map()
Map
countries = ee.FeatureCollection('users/giswqs/public/countries')
Map.addLayer(countries, {}, 'coutries')
roi = countries.filter(ee.Filter.eq('id', 'USA'))
Map.addLayer(roi, {}, 'roi')
start_date = '2019-01-01'
end_date = '2019-12-31'
l8 = (
ee.ImageCollection('LANDSAT/LC08/C01/T1_TOA')
.filterBounds(roi)
.filterDate(start_date, end_date)
)
# print(l8.size().getInfo())
median = l8.median()
visParams = {
'bands': ['B4', 'B3', 'B2'],
'min': 0,
'max': 0.4,
}
Map.addLayer(median, visParams, 'Median')
def addNDVI(image):
ndvi = image.normalizedDifference(['B5', 'B4']).rename('NDVI')
return image.addBands(ndvi)
def addDate(image):
img_date = ee.Date(image.date())
img_date = ee.Number.parse(img_date.format('YYYYMMdd'))
return image.addBands(ee.Image(img_date).rename('date').toInt())
def addMonth(image):
img_date = ee.Date(image.date())
img_doy = ee.Number.parse(img_date.format('M'))
return image.addBands(ee.Image(img_doy).rename('month').toInt())
def addDOY(image):
img_date = ee.Date(image.date())
img_doy = ee.Number.parse(img_date.format('D'))
return image.addBands(ee.Image(img_doy).rename('doy').toInt())
withNDVI = l8.map(addNDVI).map(addDate).map(addMonth).map(addDOY)
greenest = withNDVI.qualityMosaic('NDVI')
greenest.bandNames().getInfo()
ndvi = greenest.select('NDVI')
palette = [
'#d73027',
'#f46d43',
'#fdae61',
'#fee08b',
'#d9ef8b',
'#a6d96a',
'#66bd63',
'#1a9850',
]
Map.addLayer(ndvi, {'palette': palette}, 'NDVI')
Map.addLayer(greenest, visParams, 'Greenest pixel')
Map
Map.addLayer(
greenest.select('month'),
{'palette': ['red', 'blue'], 'min': 1, 'max': 12},
'Greenest month',
)
Map.addLayer(
greenest.select('doy'),
{'palette': ['brown', 'green'], 'min': 1, 'max': 365},
'Greenest doy',
)