Files
republic-os/data/jurisdictions/us/states/oh/counties/hamilton/index.md
T
Fabio 1beeaab2db Graph: national county↔district↔legislator authority layer
The first edges in the repo. Every US county now links to the districts it
sits in, weighted by area overlap, and every legislator links to the district
they represent — county → district → representative, traversable.

Data (PostGIS, no Atlas dependency — computed directly from geometry):
- data/county_district_edges.jsonl — 16,328 weighted edges. area_weight =
  ST_Area(ST_Intersection(county, district))/ST_Area(county) over ST_MakeValid
  Census TIGER 2024 geometries, overlaps <0.5% dropped. Uses area-intersection,
  NOT centroid-in-polygon, so urban districts that carve through counties
  (e.g. GA CD-5 / Atlanta across Clayton+DeKalb+Fulton) are captured, not
  silently dropped. Per-county weights sum to ~1.0 per district type.

build.py:
- ~6,896 new district nodes: 435 CD (ACS demographics where available; sparse
  for the 8 states missing from acs_cd) + 4,927 state-house + 1,897 state-senate
  (geometry-only). GEOID/number-keyed, stable.
- county index.md gains a `districts:` block (frontmatter) + a ## Districts
  section (body links, so link-integrity checks them).
- legislators + US House members gain `represents:` pointing at their district
  node; edge stored once on the person, inverse left to the view.
- schemas/jurisdiction: classification enum + chamber/districts fields.

Honest gaps (logged, not hidden): ID + NH have no state-house geometry, so
their house districts get nodes (represents resolves) but no county edges;
CD nodes for acs_cd-missing states are demographically sparse.

Deterministic (byte-identical rebuild); validate.py passes 26,617 records,
link-integrity clean (every district/represents link resolves).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-04 22:28:08 -04:00

3.4 KiB
Raw Blame History

type, title, classification, fips, state, demographics, districts, sources, confidence, tags, timestamp
type title classification fips state demographics districts sources confidence tags timestamp
Jurisdiction Hamilton County, OH county 39061 OH
population population_under_18 population_18_64 population_65_plus median_household_income poverty_rate homeownership_rate unemployment_rate median_home_value gini_index vacancy_rate race_white race_black race_asian race_native hispanic bachelors_plus
830774 190879 502140 137755 72470 14.97 59.31 5.02 241900 0.508 6.98 525380 200129 22631 1676 39995 330673
to rel area_weight
us/states/oh/districts/08 in-district 0.5066
to rel area_weight
us/states/oh/districts/01 in-district 0.4919
to rel area_weight
us/states/oh/districts/senate/8 in-district 0.6448
to rel area_weight
us/states/oh/districts/senate/9 in-district 0.2148
to rel area_weight
us/states/oh/districts/senate/7 in-district 0.1395
to rel area_weight
us/states/oh/districts/house/29 in-district 0.2948
to rel area_weight
us/states/oh/districts/house/27 in-district 0.1981
to rel area_weight
us/states/oh/districts/house/30 in-district 0.1519
to rel area_weight
us/states/oh/districts/house/28 in-district 0.1395
to rel area_weight
us/states/oh/districts/house/26 in-district 0.0782
to rel area_weight
us/states/oh/districts/house/25 in-district 0.0745
to rel area_weight
us/states/oh/districts/house/24 in-district 0.0621
field source
demographics Census ACS 2023
field source
districts PostGIS area-intersection over Census TIGER 2024 boundaries
official
jurisdiction
county
oh
2026-07-03

Hamilton County, OH

County jurisdiction — 9 officeholders mapped.

Demographics (ACS 2023)

Measure Value
Population 830774
Under 18 190879
1864 502140
65+ 137755
Median household income 72470
Poverty rate 14.97
Homeownership rate 59.31
Unemployment rate 5.02
Median home value 241900
Gini index 0.508
Vacancy rate 6.98
White 525380
Black 200129
Asian 22631
Native 1676
Hispanic/Latino 39995
Bachelor's or higher 330673

Districts

Source

  • demographics: Census ACS 2023
  • districts: PostGIS area-intersection over Census TIGER 2024 boundaries