q12·beginner
Is light pollution / electrification changing in this region?
urbaninfrastructurebiodiversityenergy Datasets: 4 5–20 min
▶ Find the data for your area
Draw a rectangle to pick your area of interest, then see what NASA data covers it (live, here in your browser) or download a ready-to-run notebook with your AOI pre-filled. The notebook runs in any Python environment — it needs a free Earthdata Login to fetch the data.
Current AOI:
75.5, 18.5 → 76.5, 19.5 (Rural Maharashtra)Is light pollution / electrification changing in this region?
What you can answer
- Urban expansion through expanding bright-pixel footprint
- Electrification of rural areas (a lit pixel where there wasn’t one before)
- Power outages after natural disasters (the canonical Black Marble use case — Puerto Rico after Hurricane Maria 2017)
- Light-pollution intensity as a biodiversity proxy
- Industrial activity through gas flaring (fossil-fuel infrastructure)
What you can NOT answer with these alone
- Source of light (residential vs industrial vs flare) without ancillary data
- Real-time outages finer than VIIRS revisit (~12-hr) — use commercial systems for sub-hourly
- Light spectrum / blue-light pollution — VIIRS DNB is broadband panchromatic
Code template
import earthaccess
import xarray as xr
import numpy as np
earthaccess.login(strategy="netrc")
# AOI: rural Maharashtra
aoi = (75.5, 18.5, 76.5, 19.5)
# 1. Black Marble VNP46A2 (BRDF-corrected daily)
bmarble = earthaccess.search_data(short_name="VNP46A2", bounding_box=aoi,
temporal=("2012-04-01", "2025-12-31"))
# Open as xarray; extract Gap_Filled_DNB_BRDF-Corrected_NTL
# Mask: NTL > 5 nW/cm²/sr considered "lit"
# 2. Annual median composite (reduces moon-phase + cloud contamination)
# Group by year, compute median per pixel
# Count "lit" pixels per year → electrification timeline
# 3. Disaster outage check (illustrative — use Hurricane Maria scenario)
# Compare median Sep 2017 vs Sep 2016 over Puerto Rico
# Difference map → outage spatial pattern
# 4. Plot:
# - Animated map (or before/after) for chosen years
# - Time-series of total lit pixel area
Expected output
- Before/after maps: e.g., 2014 vs 2024 nighttime-lights composite over your AOI
- Time-series: total “lit area” (km²) per year
- Outage map: difference between disaster-month and prior-month for events like Maria/Ian/Otis
Caveats
- Use VNP46A2 (gap-filled, BRDF-corrected) for analysis, NOT raw VNP46A1
- Moon-phase contamination is removed in VNP46A2 but check the QF flag
- Snow + ice in winter at high latitudes can look like sudden new “lights” — mask by season
- Gas flares are extremely bright; can saturate detectors and dominate pixel statistics in oilfield regions
- DMSP-OLS heritage record (1992-2013) has intercomparison issues with VIIRS; don’t naïvely concatenate — use intercalibrated harmonized products if you need pre-2012
Cross-DAAC composition
LAADS DAAC + Black Marble portal (NASA Goddard) — single auth via Earthdata Login.
Sources
- Black Marble: https://blackmarble.gsfc.nasa.gov/
- VNP46A2 product: https://ladsweb.modaps.eosdis.nasa.gov/missions-and-measurements/products/VNP46A2/
- Black Marble after-Maria study: https://earthobservatory.nasa.gov/images/91047/puerto-rico-power-outage
📚 Problem Finder KB
Not yet tracked in the KB.