Cartesio BETA
Methodology

How Cartesio works

Cartesio pulls public data from U.S. government sources, processes it into a standardized format, and renders it as interactive choropleth maps. Everything is open — the code is on Zarsk, the data sources are listed below, and no tracking follows you around.

Map types

Each map is categorized by its geographic unit:

  • County — 33 maps, one shape per U.S. county or county-equivalent (3,144 total). The standard resolution for most federal data programs.
  • State — 8 maps. ACS/BLS fields are population-weighted aggregates from county data; policy fields (minimum wage, Medicaid, etc.) are hand-curated from primary law sources.
  • City — 8 maps, covering 4179 Census Places (cities and CDPs) with a population of at least 10,000. Bubble size on each map scales with the square root of population so small cities stay visible.

All maps use the D3 Albers USA projection, which repositions Alaska and Hawaii for legibility. Click or tap any shape to see its data; use the gradient selector to change the color scale.

Color scales

Linear scales work well when data is roughly normally distributed. For data with heavy right tails (population, home values) a log scale is the default — it reveals mid-range variation that would otherwise be crushed under extreme outliers. You can switch between log and linear at any time using the toolbar.

Maps for election data use a diverging scale centered at zero — red for Republican, blue for Democratic — following the RdBu color scheme. The full gradient palette (Viridis, Plasma, Inferno, etc.) is available for all non-diverging maps.

Data freshness

Cartesio always uses the most recently released data for each source — not the most recent calendar year. Federal agencies publish on a lag:

  • Census ACS 5-Year — released ~14 months after the survey year ends. The 2023 ACS (the most recent) was published in December 2024.
  • BLS LAUS — county-level unemployment is released roughly 4 months after the reference year. 2024 data is available by spring 2025.
  • CDC PLACES — health estimates are modeled from survey + administrative records; the 2024 release covers 2021–22 underlying data.
  • EPA AQS — annual air quality summaries are finalized about 6 months after the measurement year.
  • Election results — certified county-level canvasses from the 2020 and 2024 presidential elections.
  • Policy fields (minimum wage, Medicaid expansion, etc.) — hand-updated at each data refresh; sources are the federal DOL, KFF, and state legislatures.

Data last refreshed: 2026-01-12

Data sources

SourceCoverageUsed for
Census Bureau Population Estimates 2024 Population, population change
Census ACS 5-Year 2023 Median income, age, education, housing, commute, broadband, foreign-born, poverty, Gini, and city-level equivalents
Census SAIPE 2024 Poverty rate (county)
BLS Local Area Unemployment Statistics 2024 Unemployment rate
CDC PLACES 2024 release Obesity, diabetes, smoking, uninsured
EPA Air Quality System (AQS) 2024 PM2.5 annual mean concentration
tonmcg / Official County Canvasses 2020 & 2024 certified Presidential election margins and swing
U.S. Dept. of Labor / State Labor Agencies Jan 2026 State minimum wage
KFF / CMS Jan 2026 Medicaid expansion status
NCSL / DISA Jan 2026 Marijuana legal status
NCSL 2025 Right-to-work status
Census Gazetteer (Places) 2024 City centroid coordinates for bubble maps
us-atlas (topojson) TIGER/Line 2020 County, state, and nation boundary geometries

Missing data

Not every county has every data point. Reasons include:

  • Small population — ACS suppresses estimates with high margins of error in very small counties.
  • No air monitors — EPA PM2.5 data comes from physical monitor stations; ~2,400 counties have no nearby monitor. The map shows measured concentrations where monitors exist.
  • Alaska elections — Alaska reports presidential results by state house district, not by the borough/census area boundaries used for other data. Alaska appears without election data.

Counties without data appear in dark gray.

Tech stack

  • RenderingD3 v7 + TopoJSON v3 in the browser; no server-side map rendering.
  • Projection — D3 Albers USA (repositions Alaska and Hawaii).
  • Data — flat JSON files served as static assets; no database queries on map load.
  • Backend — Django; data fetchers are standalone Python scripts run periodically.