Nighttime Lights in Myanmar#

This notebook has been prepared for the Myanmar Economic Monitor (Spring 2026). It uses data from the NASA VIIRS BlackMarble dataset available from 2012 till March 2026.

Sections:

  1. National Nighttime Lights Trends

    • 1.1 Annual Trends in Nightlights

    • 1.2 Quarterly Trends in Nightlights

    • 1.3 Annual % Change in Nightlights

    • 1.4 Monthly Trends in Nightlights (comparing 2024, 2025, 2026)

  2. Nightlights in Industrial Areas

    • 2.1 Quarterly Trends in Industrial vs Non-Industrial Areas

    • 2.2 Percentage Change in Industrial vs Non-Industrial Areas

    • 2.3 Monthly Trends in Industrial Areas (comparing 2024, 2025, 2026)

  3. Nightlights in Regions

    • 3.1 Quarterly Trends in Nightlights in Regions

    • 3.2 Monthly Trends in Nightlights in Regions (comparing 2024, 2025, 2026)

    • 3.3 Monthly Trends in Regional Industrial Areas (comparing 2024, 2025, 2026)

  4. Spatial Distribution of Nightlights

    • 4.1 Quarterly Nightlights in Regions

    • 4.2 Quarterly Nightlights in Districts

def normalize_adm1_columns(df):
    df = df.copy()
    if "ST" in df.columns:
        if "ADM1_EN" in df.columns:
            df["ADM1_EN"] = df["ADM1_EN"].fillna(df["ST"])
            df = df.drop(columns=["ST"])
        else:
            df = df.rename(columns={"ST": "ADM1_EN"})
    for old_col in ["st_code", "ST_PCODE"]:
        if old_col in df.columns:
            if "ADM1_PCODE" in df.columns:
                df["ADM1_PCODE"] = df["ADM1_PCODE"].fillna(df[old_col])
                df = df.drop(columns=[old_col])
            else:
                df = df.rename(columns={old_col: "ADM1_PCODE"})
    return df

ntl_monthly_adm1 = normalize_adm1_columns(ntl_monthly_adm1)
ntl_monthly_adm0 = normalize_adm1_columns(ntl_monthly_adm0)
mmr_adm1.rename(columns={"ST": "ADM1_EN", "ST_PCODE": "ADM1_PCODE", "st_code": "ADM1_PCODE"}, inplace=True)
mmr_adm2.rename(columns={"ST": "ADM1_EN", "ST_PCODE": "ADM1_PCODE", "st_code": "ADM1_PCODE", "DT": "ADM2_EN", "DT_PCODE": "ADM2_PCODE"}, inplace=True)

2. Nightlights in Industrial Areas#

There are 97 industrial zones in Myanamr classified as Special Economic Zones. The majority are in Yangon. The analysis for nightlights in industrial zones is done by assuming a 5km buffer zone around the points.

Make this Notebook Trusted to load map: File -> Trust Notebook

2.2 Percentage Change in Industrial vs Non-Industrial Areas#

Overall, in 2025, there a 2% reduction in nightlights in industrial areas and 11% reduction in non industrial areas compared to 2024. 2026 has recovered in both industrial and non industrial zones

3. Nightlights in Regions#