Data and Methods

What each map layer shows, which data it uses, and how it was prepared for Zagreb. On the dashboard, the ! button opens a short version of the same notes.

73 layersacross 7 themes

Baseline (citywide heat)

10
  • Land surface temperature

    A citywide map of summer land surface temperature — how hot roofs, streets, parks, and other surfaces appear from space. Warmer colours mark hotter surfaces; cooler colours mark greener or more open areas.

    Landsat 8/9 thermal satellite imagery for Zagreb summers, published as continuous map tiles

  • ECOSTRESS LST composite (~70 m)

    Daytime land surface temperature from NASA ECOSTRESS at roughly 70 m detail — finer than classic Landsat thermal, useful for spotting hot corridors inside the city.

    NASA ECOSTRESS land surface temperature granules composited over Zagreb daytime scenes

  • ECOSTRESS night LST composite (~70 m)

    Night-time land surface temperature from ECOSTRESS, showing where the city stays warm after sunset.

    NASA ECOSTRESS night-time land surface temperature for Zagreb

  • ECOSTRESS night LST — MO (°C)

    Average night-time land surface temperature for each Zagreb neighbourhood, showing which areas stay warmer after dark.

    NASA ECOSTRESS night-time land surface temperature summarised to neighbourhood polygons

  • Estimated 2 m air temperature — MO (°C)

    neighbourhood choropleth of bias-corrected reanalysis / station-calibrated 2 m air (°C). Station-calibrated modelled air temperature by neighbourhood.

    ERA5-Land / Open-Meteo air calibrated to Grič, Maksimir and Pleso (see station air profiles)

  • Estimated apparent temperature — MO (°C)

    neighbourhood choropleth of estimated apparent temperature (°C). Apparent (feels-like) temperature by neighbourhood from air-temp calibration.

    Derived from calibrated air temperature and humidity fields used in the air-temp calibration stack

  • LST — MO polygons (Summer 2024, Atmosphere 2026)

    Mean Landsat 8/9 land surface temperature (°C) per neighbourhood from the paper's 2024 acquisition window. Higher = hotter surface.

    Landsat 8/9 Collection 2 summer composite (config zagreb_landsat_dates_2024); neighbourhood means via point-in-polygon join on cached 30 m samples

  • Near-surface air temperature — MO (Summer 2024, Atmosphere 2026)

    Mean 2 m air temperature (°C) at ~11:00 CEST on each 2024 Landsat date, averaged across acquisitions (ERA5-Land via Open-Meteo).

    Open-Meteo Historical API (ERA5-Land); values assigned to neighbourhood centroids

  • Surface–air coupling zones (Atmosphere 2026)

    regression air temperature~land surface temperature residuals: coupled (|z|≤0.5 SD), air temperature above expected (warm air vs surface), air temperature below expected (ventilation/cool drainage).

    neighbourhood-level land surface temperature and overpass-aligned air temperature; ordinary least squares + 0

  • LST vs TAIR hot-spot overlap (Atmosphere 2026)

    Getis–Ord Gi* cross-tabulation: both hot/cold, land surface temperature-only, air temperature-only, or not significant (α=0.05).

    Queen-contiguity Gi* on neighbourhood mean land surface temperature and air temperature (spatial neighbourhood statistics / local cluster statistics)

Satellite rasters

13
  • NDVI (Vegetation)

    (NIR − Red) / (NIR + Red); higher = greener / more photosynthesis. Landsat vegetation greenness vegetation index tiles.

    Google Earth Engine Landsat 8/9 Collection 2 surface reflectance (summer mean over the map window)

  • NDBI (Built-up)

    (SWIR − NIR) / (SWIR + NIR); higher = more built / impervious surface. Landsat built-up intensity built-up index tiles.

    Same Landsat Collection 2 SR stack as vegetation greenness (Google Earth Engine)

  • Elevation

    Above-sea-level elevation (m). Elevation / DEM tiles.

    NASA SRTM 30 m DEM (Google Earth Engine image USGS/SRTMGL1_003)

  • Land Cover

    ESA WorldCover 10 m classes (built-up, trees, cropland, water, …). Land-cover classification tiles.

    ESA WorldCover v100 2020 or v200 2021 raster on Google Earth Engine (config worldcover_year), clipped to the ROI

  • MODIS Nighttime LST (°C)

    Mean nighttime land surface temperature from MODIS, averaged over summer. Warm nights (red, 24–28 °C) = heat retained overnight → dangerous for health because the body cannot recover from daytime heat stress. Cool nights (green, 12–16 °C) = effective cooling, typically vegetated/elevated areas. Resolution is ~1 km (neighbourhood scale).

    MODIS Terra daily (MOD11A1

  • LST Z-Score (Anomaly)

    Z = (pixel land surface temperature − city mean land surface temperature) / city std-dev. Blue (negative Z) = cooler than average; red (positive Z) = hotter than average. A pixel at 35 °C in a city averaging 38 °C appears blue (cool spot) even though 35 °C is hot in absolute terms. Useful for identifying local anomalies that absolute temperature maps miss — e.g. a warm pocket inside a park.

    Derived from the same Landsat/MODIS land surface temperature composite used for the primary analysis

  • LST Z-Score Classes (1-10)

    10 fixed classes from extreme cold spot (class 1, Z ≤ −2.0) to extreme hot spot (class 10, Z > 2.0). Middle classes (5–6) are near-average. Class 1–4: progressively cooler than average. Class 7–10: progressively hotter than average. Simpler to interpret than continuous Z values — hand this to a policy maker and say 'red = act here'.

    Same Z-score image, binned into 10 classes at 0

  • Urban Heat Exposure Index (UHEI)

    UHEI = LST_norm + (1 − NDVI_norm) + (1 − Albedo_norm). Range: 0 (best) to 3 (worst). Green (low UHEI) = cool, vegetated, reflective surfaces. Red (high UHEI) = hot, bare, dark surfaces — where all three risk factors stack up. Differs from the Composite UHI Index (temperature minus vegetation greenness) by adding albedo as a third dimension: captures surface material reflectivity that vegetation greenness alone misses (e.g. light vs dark parking lots score differently).

    land surface temperature normalized 30–50 °C, vegetation greenness normalized 0–0

  • Sentinel-2 NDVI (10 m)

    Normalized Difference Vegetation Index at 10 m from Sentinel-2 MSI. Dark green (vegetation greenness > 0.6) = dense healthy vegetation (parks, forests). Yellow (0.2–0.4) = sparse vegetation or irrigated turf. Red (< 0.1) = bare soil, asphalt, or water. Compare side-by-side with the 30 m Landsat vegetation greenness to see block-level detail that coarser imagery misses — individual tree canopies, courtyards, green roofs.

    Copernicus Sentinel-2 L2A (COPERNICUS/S2_SR_HARMONIZED), cloud-masked via SCL band, median composite over the analysis summer window

  • Sentinel-2 NDBI (10 m)

    Normalized Difference Built-up Index. Red (built-up intensity > 0.1) = dense built-up or bare soil. Blue (built-up intensity < −0.2) = vegetation or water. Higher built-up intensity correlates with higher land surface temperature — use this to identify heat-driving surfaces.

    Sentinel-2 L2A SWIR1 (B11) and NIR (B8) bands at 10–20 m, median composite, cloud-masked

  • Sentinel-2 NDWI (10 m)

    Normalized Difference Water Index. Blue/green (NDWI > 0) = open water or saturated soil. Brown (NDWI < −0.3) = dry, built-up surfaces. Water bodies act as urban cooling sinks; visualize their extent at higher resolution.

    Sentinel-2 L2A Green (B3) and NIR (B8) bands at 10 m, median composite, cloud-masked

  • Sentinel-5P NO₂ (TROPOMI)

    Citywide nitrogen dioxide (NO₂) from satellite — a pollution backdrop that often follows traffic corridors and industrial areas.

    Copernicus Sentinel-5P TROPOMI tropospheric NO₂, averaged over the analysis summer window

  • CORINE Land Cover (100 m)

    CORINE Level-3 land cover classification (100 m). Distinguishes continuous urban fabric (111) from discontinuous (112), industrial (121), road/rail (122), ports (123), airports (124), construction (133), green urban areas (141), sport/leisure (142), arable (211), vineyards (221), forests (311–313), wetlands, water bodies, and more. Ideal for correlating land-use CLASS (not just cover) with UHI intensity — e.g. 'industrial zones are 3 °C hotter than discontinuous residential'.

    Copernicus CORINE Land Cover V20 (COPERNICUS/CORINE/V20/100m), nearest available epoch (1990/2000/2006/2012/2018)

Findings

11
  • UHI Anomaly per Neighborhood (ΔT °C)

    Mean land surface temperature minus a rural reference (WorldCover non-urban classes). Positive = hotter than rural. District mean land surface temperature minus rural reference.

    Google Earth Engine land surface temperature (Landsat 8/9 ST_B10 by default, MODIS MOD11A2 if you pass --source MODIS) with ESA WorldCover (Google Earth Engine) and neighbourhood polygons from Zagreb ArcGIS Gradske_cetvrti when available, otherwise OpenStreetMap admin boundaries via Overpass (often reused from )

  • Mean LST per Neighborhood (°C)

    Mean Land Surface Temperature (°C) over the analysis window. District mean land surface temperature.

    Google Earth Engine summer composite: Landsat 8/9 Collection 2 ST_B10 (default) or MODIS/061/MOD11A2 when MODIS is selected

  • Mean NDVI per Neighborhood (Greenness)

    Mean vegetation greenness per polygon (range −1 to +1, higher = greener). District mean vegetation greenness (greenness).

    Google Earth Engine Landsat 8/9 Collection 2 surface reflectance (vegetation greenness from SR_B5/SR_B4) averaged over the map’s summer window

  • Composite UHI Index (MDPI 2025)

    A published-style composite urban heat index that combines surface temperature with vegetation greenness on Zagreb planning polygons. Higher values mean a stronger heat-island signature in index space.

    Landsat summer land surface temperature and vegetation greenness summarised on City of Zagreb urban-rule (GUP) polygons

  • Composite UHI Index 2024 (MDPI Paper Dates)

    Per-Urbana-pravila polygon: temperature minus vegetation greenness, computed on the original 2024 imagery dates used in the paper (Bečić & Gašparović, Land 2025). Higher value = stronger UHI signature in index space.

    Google Earth Engine Landsat 8/9 Collection 2 (2024 summer dates matching the published study, mean-composited land surface temperature/vegetation greenness); per-polygon zonal means (zonal averages over polygons at 30 m, MDPI-style) on City of Zagreb GUP urban-rule polygons (UrbanaPravilaGUP, layer 7)

  • LISA Clusters (HH/LL/HL/LH)

    HH = heat cluster, LL = cool cluster, HL/LH = outliers. Grey = not significant at p < 0.05. Local Moran's I heat clusters.

    Composite UHI values on those same GUP polygons, with Queen contiguity (spatial neighbourhood statistics) and local cluster statistics (999 permutations) run locally on exported attributes

  • LISA Clusters 2024 (HH/LL/HL/LH)

    HH = heat cluster, LL = cool cluster, HL/LH = outliers. Grey = not significant at p < 0.05. Based on the 2024 paper-date composite.

    Composite UHI values (2024 paper dates) on those same GUP polygons, with Queen contiguity (spatial neighbourhood statistics) and local cluster statistics (999 permutations) run locally on exported attributes

  • Thermal-Priority Parcels

    Residential/mixed-use GUP parcels with enough Landsat pixels where vegetation greenness < threshold AND land surface temperature > threshold (parcel fill + priority pixel count in tooltip).

    2024–2025 · Google Earth Engine Landsat summer composite: per-parcel zonal sum of hot pixels on NamjenaGUP1_WFL1 (layer 3) residential/mixed codes (S, M, M0–M2, Mgp)

  • Heat vulnerability index (HVI)

    A single neighbourhood score combining heat, elderly share, density, greenness gaps, and heatwave days. Higher values mark places where heat and sensitive populations overlap.

    Zagreb neighbourhood heat indicators, Census 2021 age and density, vegetation greenness, and heatwave-day counts

  • Hot districts

    District polygons classified Hot vs Other using mean UHI anomaly ≥ 75th percentile. Districts above the city ΔT hot threshold.

    District thermal summary (analysis_hot_districts

  • Street hotspot ranking

    A small set of pilot street segments ranked by how hot their surfaces are. Higher scores mark streets that may need shade or greening first.

    OpenStreetMap street geometry sampled against Zagreb land-surface temperature and hotspot indicators

Vulnerability & census

16
  • Elderly × warm night LST — MO

    0–1 score: elderly_share × ranked night land surface temperature (neighbourhood-level). Elderly share overlapping warm night-land surface temperature neighbourhoods.

    Census 2021 + ECOSTRESS night land surface temperature neighbourhood aggregates

  • Elderly heat exposure score — MO

    0–1 score: elderly_share × robust_norm(estimated_air_temp_2m_C). Spatial detail comes from **census**, not ERA5-Land air.

    DZS Census 2021 T1 (65+) + Open-Meteo daytime air ranks

  • Population density — MO polygons (light fill)

    Light blue choropleth on population_density; colour bar spans **neighbourhood 2nd–98th** density percentiles (values outside saturate). Not the combined 0.6×pop + 0.4×density planning index. **Off by default** on the integrated map.

    DZS 2021 T1 area + population + ArcGIS neighbourhood polygons

  • Elderly share 65+ — MO polygons (2021)

    Fill colour from elderly_share (0–1). Tooltip/popup include formatted percentage columns. **Off by default** (toggle with population density for comparison).

    DZS 2021 T1 Starost column 65+ ÷ total population + ArcGIS neighbourhood polygons

  • Children share 0–14 — MO polygons (2021)

    Fill colour from children_share (0–1); legend uses a robust neighbourhood-only band (2–98%iles, fallback 0–1) so clustered shares use the colour scale. Tooltip/popup include formatted percentage columns. **Off by default.**.

    DZS 2021 T1 Starost column 0–14 ÷ total population + ArcGIS neighbourhood polygons

  • Working-age share 15–64 — MO polygons (2021)

    Fill colour from working_share (0–1); legend uses a robust neighbourhood-only band (2–98%iles, fallback 0–1) for clustered shares. Tooltip/popup include formatted percentage columns. **Off by default.**.

    DZS 2021 T1 Starost column 15–64 ÷ total population + ArcGIS neighbourhood polygons

  • Census 2021: MO polygons (combined index, click for popup)

    neighbourhood fill coloured by combined index; click for counts, density, age shares (% of total). Separate pane from density and share fills; still below land surface temperature map tiles on the integrated map.

    DZS 2021 T1 joined to ArcGIS neighbourhood polygons (GC duplicate names resolved by closest area_km²)

  • Education 2021: education table (by district)

    Green choropleth by higher-education share; hover or click a district for all Tabela 2 counts and shares. Share with higher education by city district.

    DZS Popis 2021 Tabela 2 + Grad Zagreb district boundaries

  • Education 2021: least educated districts (low formal schooling)

    Darker orange = higher share_low_formal_education (no school + primary grades 1–7 + completed primary only). Share with primary schooling only (proxy for lower formal education).

    Derived from Tabela 2 counts; mutually exclusive highest-attainment categories

  • Citizen survey heat burden

    Survey-derived heat-burden and vulnerability indicators on neighbourhood or district polygons. Self-reported heat burden index (neighbourhood).

    Citizen heat-burden survey responses processed by

  • Heat Risk Population Index (HRPI) — 2024 (Earth 2026)

    A neighbourhood heat-risk score that blends summer air and surface temperature with demographic sensitivity and population density. Higher values mean more combined heat and people at risk.

    Census 2021 demographics (DZS), Landsat surface temperature, and reanalysis air temperature for July–August

  • GWR local β (demographic sensitivity) — Earth 2026

    Local β_DSI from adaptive bisquare local regression (heat risk index ~ demographic sensitivity + land surface temperature + air temperature). Higher = stronger local demographic effect.

    Census 2021 demographic sensitivity + 2024 thermal inputs; 27-neighbour adaptive kernel (Earth 2026 Model 1c analogue, cross-sectional)

  • GWR local R² — Earth 2026

    Local R² from local regression windows (0–1). Peripheral neighbourhoods often show higher fit than complex central zones.

    Same local regression specification as β_DSI layer

  • Heat-risk dominant driver (climate vs demography)

    Climate-driven vs demography-driven classification from |β×component| magnitudes (climate uses land surface temperature + air temperature).

    local regression local coefficients; demographic inputs fixed at Census 2021

  • Thermal-risk intervention priority (Earth 2026)

    Critical hotspot (high heat risk index + high β_DSI), climate hotspot, demographic-sensitive, or stable. Planning screen combining high heat risk index with demographic sensitivity.

    heat risk index 2024 + local regression β_DSI quartile thresholds (Earth 2026 Fig

  • Sensitive facilities

    Point locations of sensitive facilities, often filtered or highlighted in the 32 hot+dense neighbourhoods. Schools, kindergartens, healthcare and sport sites.

    City of Zagreb GeoHub / ArcGIS amenity layers assigned to nearest neighbourhoods

City amenities

15
  • Bicycle Paths

    Mapped bicycle/pedestrian route segments from the official city mobility dataset. Official bicycle path network.

    City of Zagreb ArcGIS FeatureServer biciklisticka_infrastruktura_podaci_view (layer 4)

  • Bus Stations / Stops

    Bus stop locations with line and accessibility attributes. Public bus stops.

    City of Zagreb ArcGIS FeatureServer Geoportal_autobusna_stajalista_ZET (layer 0)

  • Tram Stations

    Tram stop locations with line and accessibility attributes. Tram stops.

    City of Zagreb ArcGIS FeatureServer Geoportal_tramvajska_stajalista_ZET (layer 0)

  • Kindergartens

    Registered kindergarten (dječji vrtić) locations across Zagreb. Kindergarten locations.

    City of Zagreb GeoHub → Geoportal_djecji_vrtic_view FeatureServer (layer 11, djecji_vrtic)

  • Elementary Schools

    Public elementary (osnovna škola) locations across Zagreb. Elementary school locations.

    City of Zagreb GeoHub → Geoportal_osnovne_skole FeatureServer (layer 0, osnovna_skola)

  • High Schools

    All public high-school locations in Zagreb (gymnasium, vocational, arts, private, special-needs) as points. High school locations.

    ArcGIS Web Map bcc8dea69b7b4275af4b07e22e83736f → Srednje_škole_Grada_Zagreba_II FeatureServer (layers 0–4)

  • Healthcare Providers

    Point locations of registered providers with contact/address attributes where available. Healthcare provider locations.

    City of Zagreb ArcGIS FeatureServer Geoportal_ljekarne (layer 0)

  • City Outdoor Markets

    Point locations of city markets with contact/opening attributes when provided. Outdoor market locations.

    City of Zagreb ArcGIS FeatureServer Geoportal_gradske_trznice (layer 0)

  • Public Spaces for Dogs

    Designated public dog-space locations. Dog parks / public dog spaces.

    City of Zagreb ArcGIS FeatureServer Geoportal_javne_povrsine_za_pse (layer 0)

  • Sport Fields

    Public sport-field point locations. Sport field locations.

    City of Zagreb ArcGIS FeatureServer Geoportal_sportska_igralista (layer 0)

  • Sport Facilities

    Sports-facility point locations with category/operator attributes. Sport facility locations.

    City of Zagreb ArcGIS FeatureServer Geoportal_sportski_objekti_view (layer 19)

  • Student Accommodation

    Student accommodation point locations. Student housing locations.

    City of Zagreb ArcGIS FeatureServer Geoportal_studentsko_naselje_view (layer 22)

  • Water Drinking Fountains

    Public drinking-fountain point locations. Public drinking fountains.

    City of Zagreb ArcGIS FeatureServer pitka_voda (layer 0)

  • Public Bike Parking

    Public bike-parking stand locations with capacity attributes where available. Public bicycle parking stands.

    City of Zagreb ArcGIS FeatureServer Javna_parkirališta_za_bicikle (layer 2)

  • Tourism Accommodation

    Tourism accommodation point locations and type metadata. Tourism accommodation locations.

    City of Zagreb ArcGIS FeatureServer Geoportal_smjestajni_kapaciteti (layer 0)

Greenery

6
  • Tree cover deficit

    Shows where high heat-vulnerability neighbourhoods still lack tree canopy relative to a realistic greening target, and where planting could cool the most.

    Neighbourhood vegetation greenness, heat vulnerability scores, and a realistic canopy target based on greener Zagreb districts

  • NDVI greening trend

    District polygons coloured by Sentinel-2 vegetation greenness slope (per year). Positive = greening. Sentinel-2 vegetation greenness slope per year by district.

    Summer Sentinel-2 vegetation greenness (2017–2025) and Landsat land surface temperature context from rqe_multiyear_trend outputs

  • Cool refuge access

    neighbourhood centroids or points coloured by walk minutes to the nearest mapped green / cool space. Walk time to nearest cool refuge (RQ-D).

    GUP green polygons + city sport/fountain points with a walking / detour model (RQ-D analysis)

  • Green Areas (GUP zeleno + šuma)

    Polygons from the city's Generalni urbanistički plan (GUP). Official green / forest polygons from GUP.

    City of Zagreb ArcGIS service GUP_GZ_namjena_zeleno_suma_union (also cached like districts); when missing, the cooler reference for ΔT falls back to ESA WorldCover non-urban classes only

  • Green Cadastre (Trees)

    Individual trees from Zagreb’s official green cadastre. Zoom in to explore species and size cues such as height and crown.

    City of Zagreb green cadastre (zeleni katastar) tree inventory

  • Green Cadastre (Tree Density)

    Heatmap of tree point density (same inventory as the clustered tree layer). Heatmap of tree density from the green cadastre (blurred intensity, not individual trees).

    Derived from the green cadastre point layer (zagreb_green_cadastre_heat

Reference

2
  • City of Zagreb Boundary

    Merged boundary of the same district polygons used elsewhere on the map. City administrative boundary.

    Derived locally from the District Boundaries map features (Zagreb ArcGIS or cached fetch), not a separate download

  • District Boundaries (Zagreb ArcGIS)

    Zagreb's 17 city districts (gradske četvrti). Zagreb city district (gradska četvrt) boundaries.

    City of Zagreb ArcGIS FeatureServer “Gradske_cetvrti” (queried as map features; pipeline saves a copy under when online)