// 1. Define Area of Interest (Ukraine)
var countries = ee.FeatureCollection('USDOS/LSIB_SIMPLE/2017');
var ukraine = countries.filter(ee.Filter.eq('country_na', 'Ukraine'));
Map.centerObject(ukraine, 6);
Map.addLayer(ukraine, {}, 'Ukraine Boundary');
// 2. Load Hansen Global Forest Change (Landsat-based)
var gfc = ee.Image('UMD/hansen/global_forest_change_2022_v1_10');
// Bands
var treeCover2000 = gfc.select('treecover2000');
var loss = gfc.select('loss');
var gain = gfc.select('gain');
var lossYear = gfc.select('lossyear');
// 3. Mask Forest Areas (>30% canopy in 2000)
var forestMask = treeCover2000.gt(30);
// 4. Apply masks
var forest2000 = treeCover2000.updateMask(forestMask);
var lossMasked = loss.updateMask(loss);
var gainMasked = gain.updateMask(gain);
// 5. Visualization
// Forest in 2000 (green)
Map.addLayer(forest2000.clip(ukraine), {
min: 0,
max: 100,
palette: ['black', 'green']
}, 'Forest Cover 2000');
// Forest loss (red)
Map.addLayer(lossMasked.clip(ukraine), {
palette: ['red']
}, 'Forest Loss');
// Forest gain (blue)
Map.addLayer(gainMasked.clip(ukraine), {
palette: ['blue']
}, 'Forest Gain');
// 6. Time-based deforestation (example: 2021–2026)
var lossRecent = lossYear.gte(21).and(lossYear.lte(26));
Map.addLayer(lossRecent.updateMask(lossRecent).clip(ukraine), {
palette: ['yellow']
}, 'Recent Loss (2021–2026)');
// 7. Calculate total deforestation area
var pixelArea = ee.Image.pixelArea();
var lossArea = loss.multiply(pixelArea);
var stats = lossArea.reduceRegion({
reducer: ee.Reducer.sum(),
geometry: ukraine,
scale: 30,
maxPixels: 1e13
});
print('Total forest loss (m²):', stats);
print('Total forest loss (km²):',
ee.Number(stats.get('loss')).divide(1e6)
);
// 8. Legend (optional)
var legend = ui.Panel({style: {position: 'bottom-left'}});
legend.add(ui.Label('Legend'));
legend.add(ui.Label('Green: Forest (2000)'));
legend.add(ui.Label('Red: Loss'));
legend.add(ui.Label('Blue: Gain'));
legend.add(ui.Label('Yellow: Recent Loss'));
Map.add(legend);
![[Ukraine_Deforestation.png]]