Skip to content
Work-Atlas-Probe

Geospatial salaries by state: BLS OEWS May 2025, 15 occupations

State-level wage statistics for the 15 geospatial and geospatial-adjacent occupations (cartographers and photogrammetrists, surveyors, geographers, surveying and mapping technicians, urban and regional planners, software developers, data scientists, and more), joined to Census state boundaries. One feature per state, with each occupation’s statistics as columns: median, mean, and 10th/25th/75th/90th percentile annual wages (cartographers_median, cartographers_p90, planners_median, and so on). 51 features covering the 50 states and DC; suppressed state-occupation combinations omit the column, never zero. Load it in QGIS and style by any *_median column for an instant choropleth. The map shown colors states by surveyors_median.

Von Ian ShilandThe Spatial NetpmtilesErstellt Erstellt: auf The Spatial Net angelegtAktualisiert vor 16 Tagen
Methodik

Hinter der Arbeit

Problem

BLS OEWS is authoritative but lives in flat tables keyed by SOC and area codes. This packages the geospatial slice as a ready-to-map spatial layer.

Rolle

Sole author. Extraction and join by me; the underlying statistics are BLS's.

Datenquellen

  • BLS Occupational Employment and Wage Statistics (May 2025 reference), retrieved via the BLS Public Data API v2
  • State geometries: US Census Bureau cartographic boundary files, 1:20,000,000 (2023)

Koordinatensystem

EPSG:4326 (WGS 84)

Toolchain

BLS Public Data API v2PostgreSQLPythonGDALtippecanoe

Prozessnotizen

Wage series assembled per SOC x state x statistic from the BLS Public Data API; values absent or suppressed by BLS stay null, never zero. Joined to Census 1:20m state boundaries, then packaged as PMTiles with tippecanoe 2.79 (the same release this platform runs) for durable range-request hosting. The source GeoJSON is 7 MB; the archive is 168 KB.

Validierung

Percentile ordering checked (p10 <= p25 <= median <= p75 <= p90) on every row: 0 violations. 672 rows = 15 occupations x the areas BLS publishes for each; row count and per-SOC coverage cross-checked against the API response audit (no silent drops).

Wirkung

This is the same public data family that backs The Spatial Net's Salary Atlas baseline tier.

Datenlizenz

BLS and Census data are US government works (public domain). Output: CC BY 4.0