{
  "alt": "County map of the United States shaded by each county's residual margin, the Democratic margin above or below the margin predicted from race, income and education. Counties in the South average {fact:map_south} points and counties in the Northeast {fact:map_northeast} points, and counties differ from the prediction by tens of points in both directions. The second view repeats the map after adding density to the model and the third view shades counties by diesel exposure, which is highest in New York, Kings, Bronx and Queens Counties in New York City and in Hudson County, New Jersey. Colors stop at {fact:map_cap} points either way, and {fact:n_over_clamp} counties lie beyond that in the first view. In the diesel view colors stop at {fact:diesel_cap} micrograms per cubic meter, and {fact:n_over_diesel_cap} counties lie above that, New York, Kings and Bronx Counties.",
  "caption": "Red counties voted more Republican than race, income and education predict, and blue counties more Democratic, across {fact:n_counties_sample} counties. Switch views to hold density fixed as well, or to see diesel exposure, which is highest in New York, Kings, Bronx and Queens Counties in New York City and in Hudson County, New Jersey, where county means run from {fact:diesel_top5_lo} to {fact:diesel_top5_hi} micrograms per cubic meter.",
  "data": [],
  "id": "county_lean_map",
  "notes": [
    "Hawaii, Connecticut and the District of Columbia draw as no data (Hawaii has no tract vote estimates, the tract atlas has no rows for Connecticut, and it has no white share for DC tracts), and so does any county without a tract of more than {fact:vote_floor} votes.",
    "County values are averages of modeled tract values, so they carry the errors of both models. No interval is shown on the map."
  ],
  "source": "Precinct votes allocated to census tracts (Fekrazad 2025), 2020 presidential election; EPA EJScreen version 2.3 (2024 release, 2020 air data); American Community Survey tract data (vintage not recorded in the atlas); vote-weighted county means of tract values, full counts, no sampling weights",
  "spec": {
    "fips": "fips",
    "legendLabel": "Residual margin after race, income and education (percentage points)",
    "payload": "county_lean.json",
    "scale": {
      "domain": [
        -40,
        40
      ],
      "palette": "party",
      "type": "diverging"
    },
    "tooltipKeys": [
      "diesel_exposure",
      "margin_net_demographics",
      "margin_net_density",
      "tracts"
    ],
    "value": "margin_net_demographics",
    "valueFormat": {
      "digits": 0,
      "signed": true
    }
  },
  "subtitle": "Residual margin: tract Democratic two-party margin minus the margin predicted from tract race, income and education, averaged over each county's tracts by votes, percentage points; county diesel exposure in micrograms per cubic meter",
  "title": "The residual margin after race, income and education averages {fact:map_south} points in southern counties and {fact:map_northeast} points in northeastern counties, weighted by votes",
  "type": "county-map",
  "views": [
    {
      "id": "demog",
      "label": "Residual margin"
    },
    {
      "id": "dens",
      "label": "Residual, density held fixed",
      "spec": {
        "legendLabel": "Residual margin after race, income, education and density (percentage points)",
        "scale": {
          "domain": [
            -40,
            40
          ],
          "palette": "party",
          "type": "diverging"
        },
        "value": "margin_net_density",
        "valueFormat": {
          "digits": 0,
          "signed": true
        }
      }
    },
    {
      "id": "diesel",
      "label": "Diesel exposure",
      "spec": {
        "legendLabel": "Diesel particulate matter, county mean (micrograms per cubic meter)",
        "scale": {
          "domain": [
            0,
            0.6
          ],
          "palette": "seq",
          "type": "sequential"
        },
        "value": "diesel_exposure",
        "valueFormat": {
          "digits": 2
        }
      }
    }
  ],
  "width": "full"
}
