@kahwee/sf-map-svg 2.0.0 → 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +14 -0
- package/README.md +72 -1
- package/SOURCES.md +34 -0
- package/dist/data/candidates/2016-11-08.json +1 -0
- package/dist/data/candidates/2018-11-06.json +1 -0
- package/dist/data/candidates/2020-11-03.json +1 -0
- package/dist/data/candidates/2022-11-08.json +1 -0
- package/dist/data/candidates/2024-11-05.json +1 -0
- package/dist/data/candidates/2026-06-02.json +1 -0
- package/dist/data/candidates/README.md +43 -0
- package/dist/data/candidates/catalog.json +40 -0
- package/dist/src/configuration.js +1 -0
- package/dist/src/controller-types.d.ts +23 -2
- package/dist/src/explorer-core.js +230 -4
- package/dist/src/layers.d.ts +2 -0
- package/dist/src/layers.js +2 -2
- package/dist/src/map-core.d.ts +33 -0
- package/dist/src/map-core.js +90 -28
- package/dist/src/map.d.ts +1 -1
- package/dist/src/map.js +8 -0
- package/dist/src/static.d.ts +35 -2
- package/dist/src/static.js +5 -1
- package/dist/src/types.d.ts +19 -0
- package/dist/src/validation.js +3 -0
- package/docs/EXAMPLES.md +8 -1
- package/package.json +5 -2
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,20 @@ User-visible changes are recorded here. Unreleased entries describe changes on `
|
|
|
4
4
|
|
|
5
5
|
## Unreleased
|
|
6
6
|
|
|
7
|
+
## 2.2.0 — 2026-09-27
|
|
8
|
+
|
|
9
|
+
- Add “One spot, three San Franciscos” to Pages and Storybook, comparing the same location across district, neighborhood, and transit views.
|
|
10
|
+
- Modernize the Storybook examples in TypeScript and gate map changes with reviewed desktop and 390 px visual snapshots on macOS and Linux.
|
|
11
|
+
- Add first-class election choropleths: static and interactive `districtStyle`, live district year/style setters, district selection and activation events, keyboard interaction, and a reduced-motion-aware year crossfade.
|
|
12
|
+
- Export `getLayerPaths` for canonical fitted layer geometry and `DistrictYear`, `DistrictRowData`, and `DistrictStyle` from the modern entrypoints.
|
|
13
|
+
- Add an official-election Storybook example covering three boundary years, vote-share coloring, mobile layout, keyboard selection, year changes, and accessibility checks.
|
|
14
|
+
|
|
15
|
+
## 2.1.0 — 2026-09-27
|
|
16
|
+
|
|
17
|
+
- Pages site: add motion and a dark theme. Cross-document View Transitions keep the header still and morph example titles into page titles; the home hero is an interactive dot map of the 2022 districts; entrances, count-ups, growing charts, and hover/focus micro-interactions respect reduced motion and print. The site adds no library.
|
|
18
|
+
- Pages site: load simplified display maps and thumbnails instead of full-precision SVGs and bundled GeoJSON (candidate and proposition explorers drop from about 391 KB to 12 KB of compressed JavaScript and CSS); add dark map thumbnails, a favicon, a 404 page, a sitemap, per-page social tags, theme-colored browser bars, and a browser smoke test with size budgets that gates deployment.
|
|
19
|
+
- Add six optional San Francisco candidate vote snapshots (2016–2026), a Pages explorer, official source records, and a dataset import script.
|
|
20
|
+
|
|
7
21
|
## 2.0.0 — 2026-09-27
|
|
8
22
|
|
|
9
23
|
Version 2 makes geography an explicit dependency and separates the application API
|
package/README.md
CHANGED
|
@@ -70,6 +70,9 @@ function and disposal removes all its subscriptions. Operations after disposal t
|
|
|
70
70
|
`renderMap(data, options)` from `/static` returns `{ svg, project, ... }` and needs only
|
|
71
71
|
`StaticMapData` (for example, `guideMapData.map`). Static options retain their SVG-unit
|
|
72
72
|
semantics; camera/motion/control options belong exclusively to the browser controller.
|
|
73
|
+
`getLayerPaths(data, options)` returns the same fitted projection and canonical coast,
|
|
74
|
+
district, neighborhood, highway, landmark, road, and station paths without making SVG markup.
|
|
75
|
+
`DistrictYear`, `DistrictRowData`, and `DistrictStyle` are exported types from the root and `/static`.
|
|
73
76
|
See [v2 migration and architecture](docs/migration-v2.md) for breaking changes,
|
|
74
77
|
configuration resets, and bundle boundaries. Existing subpaths remain compatibility APIs.
|
|
75
78
|
|
|
@@ -179,6 +182,7 @@ Embed the returned SVG markup directly in a page; in Astro, use `<div set:html={
|
|
|
179
182
|
| `neighborhoodLines` | `false` | Dashed SFAR realtor neighborhood outlines |
|
|
180
183
|
| `theme` | `'districts'` | Use `'transit'` for pale blue water, ivory land, green parks, and blue BART symbols; custom `colors` still take precedence |
|
|
181
184
|
| `districtFills` | `true` | Original Site’s eleven muted district colors |
|
|
185
|
+
| `districtStyle` | — | Per-district callback returning optional `fill`, `stroke`, and `opacity` (0–1); applies to both static SVG and the interactive map |
|
|
182
186
|
| `labels` | `true` | Master switch for visible map text; symbols and accessible titles remain |
|
|
183
187
|
| `districtLabels` | `true` | District number badges |
|
|
184
188
|
| `highways` | `false` | Original Site’s highway geometry |
|
|
@@ -197,6 +201,54 @@ For a plain outline map, set `districtFills: false`. Neighborhood areas are **Au
|
|
|
197
201
|
|
|
198
202
|
`createSFMap(options)` returns `{ svg, project, viewBox }`. `project([longitude, latitude])` gives matching SVG coordinates for custom overlays. Named exports also include `districtYears`, `districtColors`, and `neighborhoodNames`.
|
|
199
203
|
|
|
204
|
+
### Election district API
|
|
205
|
+
|
|
206
|
+
Supply canonical district rows for each boundary year and return a style for each district:
|
|
207
|
+
|
|
208
|
+
```ts
|
|
209
|
+
import { createMap, getLayerPaths, renderMap, type StaticMapData } from '@kahwee/sf-map-svg';
|
|
210
|
+
import { districtMaps } from '@kahwee/sf-map-svg/data/districts';
|
|
211
|
+
import coast from '@kahwee/sf-map-svg/data/coast.json' with { type: 'json' };
|
|
212
|
+
|
|
213
|
+
const districts = Object.fromEntries(
|
|
214
|
+
Object.entries(districtMaps).map(([year, collection]) => [year, collection.features.map(({ geometry, properties }) => ({
|
|
215
|
+
id: properties.district,
|
|
216
|
+
label: properties.label,
|
|
217
|
+
labelPoints: properties.labelPoints,
|
|
218
|
+
geometry,
|
|
219
|
+
extras: properties.displayExtras,
|
|
220
|
+
}))]),
|
|
221
|
+
) as StaticMapData['districts'];
|
|
222
|
+
const data: StaticMapData = { coast: coast.features[0].geometry as StaticMapData['coast'], districts };
|
|
223
|
+
const shares = new Map([[1, 0.62], [2, 0.48]]); // Replace with your vote data.
|
|
224
|
+
const districtStyle = (district: { id: number }) => ({
|
|
225
|
+
fill: (shares.get(district.id) ?? 0) >= 0.5 ? '#498c79' : '#cfdfd6',
|
|
226
|
+
stroke: '#49665f',
|
|
227
|
+
});
|
|
228
|
+
const { svg } = renderMap(data, { year: 2022, districtStyle });
|
|
229
|
+
const paths = getLayerPaths(data, { year: 2022 }); // paths.districts[0].geometry / .extras / .path
|
|
230
|
+
|
|
231
|
+
const map = createMap({ map: data, districts: districtMaps, neighborhoods: {} }, {
|
|
232
|
+
mode: 'districts', year: 2022, appearance: { districtStyle },
|
|
233
|
+
});
|
|
234
|
+
document.querySelector('#map')?.append(map.element);
|
|
235
|
+
map.on('districtchange', ({ id, year }) => console.log(id, year));
|
|
236
|
+
map.on('districtactivate', ({ id }) => console.log('activated', id));
|
|
237
|
+
map.on('districthover', ({ id }) => console.log('hovered', id));
|
|
238
|
+
map.setDistrictYear(2012, { animate: true }); // Crossfades; reduced motion disables the fade.
|
|
239
|
+
map.selectDistrict(1, { fit: true });
|
|
240
|
+
map.setDistrictStyle(districtStyle); // Recompute colors after your vote data changes.
|
|
241
|
+
// On component disposal: map.destroy();
|
|
242
|
+
```
|
|
243
|
+
|
|
244
|
+
District paths are keyboard buttons: Tab enters the district layer, brackets move among districts,
|
|
245
|
+
and Enter or Space selects and activates one. `getSelectedDistrict()` returns a detached
|
|
246
|
+
`{ id, year, district }` snapshot. `setDistrictYear()` preserves the camera and an existing
|
|
247
|
+
district selection, changes labels and paths in place, and emits `districtyearchange`.
|
|
248
|
+
It requires both district rows and label features for the requested year; unavailable years
|
|
249
|
+
throw without changing the map. The `animate` option crossfades boundary sets rather than
|
|
250
|
+
morphing polygons with different topology.
|
|
251
|
+
|
|
200
252
|
Use `theme: 'transit'` for pale water, ivory land, green parks, and blue BART symbols. Custom `colors` override the preset. Park and station overlays represent current source geography, independently of the district year; stations outside San Francisco, including Daly City, are excluded.
|
|
201
253
|
|
|
202
254
|
`keyRoads: true` adds the six curated orientation streets using DataSF centerlines. These are orientation features, not routing guidance. The lightweight guide shows primary corridors at city scale and Lombard after zooming.
|
|
@@ -424,13 +476,15 @@ pnpm test:package # install and check the packed package
|
|
|
424
476
|
|
|
425
477
|
Use `pnpm format` to apply Biome formatting and safe lint fixes. Install Chromium once with `pnpm exec playwright install chromium` before local Storybook tests. Run `pnpm storybook` for interactive component examples at http://127.0.0.1:6006. The coverage command writes `coverage/storybook/coverage-summary.json` and `lcov.info` for `src/` TypeScript only. CI runs package and Chromium Storybook checks on Node 26 and uploads the coverage report. See [CONTRIBUTING.md](CONTRIBUTING.md) for source structure and release instructions.
|
|
426
478
|
|
|
479
|
+
In Storybook, start with **Start here / V2 interactive map** and **Start here / V2 static SVG** for copyable public imports and live layer controls. The phone stories use a 390 px Storybook viewport; the toolbar also offers a 1280 px desktop viewport. **Maps** shows the guide and transit components, **Data** compares source definitions, **Legacy** documents compatibility entrypoints, and **Checks** contains deeper controller regressions. Accessibility violations fail Storybook browser tests by default.
|
|
480
|
+
|
|
427
481
|
### Browser verification
|
|
428
482
|
|
|
429
483
|
|
|
430
484
|
Run `pnpm demo` and serve the repository root. `examples/generated/index.html` covers static
|
|
431
485
|
maps, `explorer.html` covers the full explorer, and `interactive.html` covers independently
|
|
432
486
|
controlled neighborhood selection, 36 overlapping sample markers, and fit/save/restore hooks.
|
|
433
|
-
Storybook **
|
|
487
|
+
Storybook **Legacy / Interactive map** includes both themes, selectable neighborhoods,
|
|
434
488
|
independent layers, dense markers, and a 390px example.
|
|
435
489
|
|
|
436
490
|
With that server running, the browser regression checks can be run through the installed CLI:
|
|
@@ -451,8 +505,25 @@ synthetic pointer tests do not establish physical-device compatibility.
|
|
|
451
505
|
|
|
452
506
|
## GitHub Pages
|
|
453
507
|
|
|
508
|
+
The [one spot, three San Franciscos map](https://kahwee.github.io/sf-map-svg/spot.html) lets visitors pick a point and compare its SFAR, SF Find, and analysis neighborhood definitions, then inspect its supervisorial district on the 2002, 2012, and 2022 display maps. The same comparison appears in Storybook under **Data / One spot, three San Franciscos**. A source outline is drawn from that source's polygon; clicking the map runs point-in-polygon lookup against the canonical geographic collections. The page makes no address or legal-boundary claim.
|
|
509
|
+
|
|
454
510
|
The [civic atlas](https://kahwee.github.io/sf-map-svg/) leads with certified June 2026 ballot measure results. Visitors can select a measure and district, switch Yes/No shading, compare the official 2002, 2012, and 2022 district maps, and play a schematic BART journey. The boundary animation morphs matched district outlines between dated SVGs. Intermediate shapes illustrate the change; each completed year uses its exact published geometry. Playback is user initiated, pauses when the page is hidden, and switches instantly when reduced motion is requested. The lightweight neighborhood guide loads on demand. The full [ballot measures explorer](https://kahwee.github.io/sf-map-svg/measures.html) spans all three district map years with four separately sourced election snapshots.
|
|
455
511
|
|
|
512
|
+
The [candidate vote explorer](https://kahwee.github.io/sf-map-svg/candidates.html) maps
|
|
513
|
+
56 certified federal, statewide, and state legislative contests across six
|
|
514
|
+
San Francisco elections from 2016 to 2026. It loads one election JSON on
|
|
515
|
+
demand, marks districts only partly eligible for House or legislative races,
|
|
516
|
+
and keeps the 2012 and 2022 supervisorial map vintages distinct. Applications
|
|
517
|
+
can import a snapshot explicitly from npm without adding it to the default
|
|
518
|
+
renderer:
|
|
519
|
+
|
|
520
|
+
```js
|
|
521
|
+
import election from '@kahwee/sf-map-svg/data/candidates/2024-11-05.json' with { type: 'json' };
|
|
522
|
+
```
|
|
523
|
+
|
|
524
|
+
See the [candidate schema](data/candidates/README.md), [source records](SOURCES.md),
|
|
525
|
+
and [next dataset ideas](docs/data-opportunities.md).
|
|
526
|
+
|
|
456
527
|
```sh
|
|
457
528
|
pnpm build:pages # local preview
|
|
458
529
|
pnpm build:pages --released # use the current npm release
|
package/SOURCES.md
CHANGED
|
@@ -1,5 +1,39 @@
|
|
|
1
1
|
# Geometry and provenance
|
|
2
2
|
|
|
3
|
+
## Candidate votes in San Francisco, 2016–2026
|
|
4
|
+
|
|
5
|
+
Downloaded September 26, 2026 from the San Francisco Department of Elections'
|
|
6
|
+
final district statements of vote. The files under `data/candidates/`
|
|
7
|
+
contain 56 candidate contests across six elections, with candidate vote counts
|
|
8
|
+
for San Francisco citywide and supervisorial districts. Original workbooks are
|
|
9
|
+
ingestion inputs and are not distributed.
|
|
10
|
+
|
|
11
|
+
| Election | Final official workbook | Supervisorial map vintage |
|
|
12
|
+
| --- | --- | --- |
|
|
13
|
+
| November 8, 2016 | https://www.sfelections.org/results/20161108/data/20161206/20161206_sov.xlsx | 2012 |
|
|
14
|
+
| November 6, 2018 | https://www.sfelections.org/results/20181106/data/20181127/20181127_sov.xlsx | 2012 |
|
|
15
|
+
| November 3, 2020 | https://www.sfelections.org/results/20201103/data/20201201/20201201_dsov.xlsx | 2012 |
|
|
16
|
+
| November 8, 2022 | https://www.sfelections.org/results/20221108/data/20221201/dsov.xlsx | 2022 |
|
|
17
|
+
| November 5, 2024 | https://www.sfelections.org/results/20241105/data/20241203/dsov.xlsx | 2022 |
|
|
18
|
+
| June 2, 2026 | https://sfelections.org/results/20260602/data/20260625/dsov.xlsx | 2022 |
|
|
19
|
+
|
|
20
|
+
The [Department's election data catalog](https://sfelections.org/tools/election_data/datasets.php)
|
|
21
|
+
indexes related election materials. `scripts/import-candidate-results.py` records
|
|
22
|
+
each input SHA-256 in the corresponding JSON and reconciles candidate totals,
|
|
23
|
+
under/overvotes, and all eleven supervisorial areas against the official SF
|
|
24
|
+
total. The 2016 and 2018 workbooks contain explicit district and neighborhood
|
|
25
|
+
summary sections. Later workbooks supply dedicated district statements. A
|
|
26
|
+
missing supervisorial row in a congressional or legislative contest means that
|
|
27
|
+
district was outside the eligible contest area; it is not a zero vote share.
|
|
28
|
+
The 2024 Treasurer workbook reports one additional cumulative vote and two
|
|
29
|
+
undervotes outside the supervisorial rows, retained in `unassigned` and the
|
|
30
|
+
citywide total.
|
|
31
|
+
All pages use candidate / total valid contest votes, not a two-party share.
|
|
32
|
+
The archive excludes ranked-choice local races, primary contests before 2026,
|
|
33
|
+
and other election dates; it does not claim to represent all SF elections.
|
|
34
|
+
Historical neighborhood labels in election workbooks are not substituted for
|
|
35
|
+
the independent neighborhood boundary datasets in this repository.
|
|
36
|
+
|
|
3
37
|
## California propositions in San Francisco
|
|
4
38
|
|
|
5
39
|
Downloaded September 26, 2026 from the San Francisco Department of Elections' [final November 5, 2024 results](https://sfelections.org/results/20241105w/detail.html):
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"electionDate":"2016-11-08","electionName":"2016-11-08 San Francisco candidate results","districtYear":2012,"certifiedDate":"2016-12-06","downloadedDate":"2026-09-26","source":"https://www.sfelections.org/results/20161108/data/20161206/20161206_sov.xlsx","sourceSha256":"b5a0ca135b54fe36c1cf22684d8f3ec237e7cf37ab3a304682c066238e7c6675","geography":"Votes cast in San Francisco, reported by supervisorial district. Congressional and state legislative contests include only eligible portions of each district.","method":"Candidate vote share divides a candidate count by all valid votes in that contest and area. Write-ins are included when reported. District eligibility uses registered-voter counts in the official workbook compared with the election’s citywide presidential or gubernatorial contest. Missing supervisorial rows indicate no eligible voters, not zero support. County cumulative votes, when present, are recorded separately as unassigned.","contests":[{"id":"president-and-vice-president","title":"President and Vice President","sourceSheet":"100 - President and Vice Presid","candidates":[{"name":"JILL STEIN / AJAMU BARAKA","party":null,"sourceColumn":8},{"name":"HILLARY CLINTON / TIM KAINE","party":null,"sourceColumn":9},{"name":"GLORIA ESTELA LA RIVA / DENNIS J. BANK","party":null,"sourceColumn":10},{"name":"DONALD J. TRUMP / MICHAEL R. PENCE","party":null,"sourceColumn":11},{"name":"GARY JOHNSON / BILL WELD","party":null,"sourceColumn":12},{"name":"WRITE-IN","party":null,"sourceColumn":13},{"name":"WRITE-IN LAURENCE KOTLIKOFF / EDWARD L","party":null,"sourceColumn":14},{"name":"WRITE-IN MIKE MATUREN / JUAN MUNOZ","party":null,"sourceColumn":15},{"name":"WRITE-IN EVAN MCMULLIN / NATHAN JOHNSO","party":null,"sourceColumn":16},{"name":"WRITE-IN BERNARD 'BERNIE' SANDERS / TU","party":null,"sourceColumn":17},{"name":"WRITE-IN JERRY WHITE / NILES NIEMUTH","party":null,"sourceColumn":18}],"citywide":{"votes":[9904,345084,1799,37688,8883,2749,13,22,373,2021,5],"totalVotes":408541,"registeredVoters":513573,"undervotes":5218,"overvotes":769,"sourceRow":1227},"districts":[{"district":1,"eligible":true,"votes":[968,28937,162,4166,775,232,0,5,29,213,2],"totalVotes":35489,"registeredVoters":43818,"undervotes":507,"overvotes":37,"sourceRow":1216,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[591,36678,72,4597,1759,552,2,1,88,139,0],"totalVotes":44479,"registeredVoters":51388,"undervotes":648,"overvotes":28,"sourceRow":1217,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[746,26892,129,3121,886,235,1,2,36,149,0],"totalVotes":32197,"registeredVoters":41720,"undervotes":423,"overvotes":62,"sourceRow":1218,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[929,26567,164,5202,786,223,0,0,39,224,0],"totalVotes":34134,"registeredVoters":43829,"undervotes":705,"overvotes":38,"sourceRow":1219,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[1214,41514,166,2123,861,227,1,6,31,244,1],"totalVotes":46388,"registeredVoters":56261,"undervotes":354,"overvotes":72,"sourceRow":1220,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[778,26665,156,2531,781,241,3,0,26,190,1],"totalVotes":31372,"registeredVoters":44187,"undervotes":386,"overvotes":108,"sourceRow":1221,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[929,31845,136,5540,965,310,0,0,56,190,0],"totalVotes":39971,"registeredVoters":48429,"undervotes":646,"overvotes":42,"sourceRow":1222,"partiallyEligible":false},{"district":8,"eligible":true,"votes":[1155,47382,158,2163,747,241,4,3,34,202,1],"totalVotes":52090,"registeredVoters":59392,"undervotes":371,"overvotes":40,"sourceRow":1223,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[1252,30909,232,2167,443,156,1,3,9,192,0],"totalVotes":35364,"registeredVoters":44492,"undervotes":335,"overvotes":94,"sourceRow":1224,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[650,24861,205,2455,420,143,0,0,14,139,0],"totalVotes":28887,"registeredVoters":41815,"undervotes":381,"overvotes":129,"sourceRow":1225,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[692,22834,219,3623,460,189,1,2,11,139,0],"totalVotes":28170,"registeredVoters":38242,"undervotes":462,"overvotes":119,"sourceRow":1226,"partiallyEligible":false}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0,0,0,0,0,0,0,0,0,0]}},{"id":"u-s-senator","title":"U.S. Senator","sourceSheet":"105 - U.S. Senator","candidates":[{"name":"LORETTA L. SANCHEZ","party":null,"sourceColumn":8},{"name":"KAMALA D. HARRIS","party":null,"sourceColumn":9}],"citywide":{"votes":[80985,286723],"totalVotes":367708,"registeredVoters":513573,"undervotes":46255,"overvotes":565,"sourceRow":1227},"districts":[{"district":1,"eligible":true,"votes":[7093,24604],"totalVotes":31697,"registeredVoters":43818,"undervotes":4308,"overvotes":28,"sourceRow":1216,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[8179,30807],"totalVotes":38986,"registeredVoters":51388,"undervotes":6122,"overvotes":47,"sourceRow":1217,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[7197,20949],"totalVotes":28146,"registeredVoters":41720,"undervotes":4507,"overvotes":29,"sourceRow":1218,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[7741,22024],"totalVotes":29765,"registeredVoters":43829,"undervotes":5077,"overvotes":35,"sourceRow":1219,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[7003,35352],"totalVotes":42355,"registeredVoters":56261,"undervotes":4401,"overvotes":58,"sourceRow":1220,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[6858,21073],"totalVotes":27931,"registeredVoters":44187,"undervotes":3846,"overvotes":89,"sourceRow":1221,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[8745,27244],"totalVotes":35989,"registeredVoters":48429,"undervotes":4634,"overvotes":36,"sourceRow":1222,"partiallyEligible":false},{"district":8,"eligible":true,"votes":[7306,41201],"totalVotes":48507,"registeredVoters":59392,"undervotes":3954,"overvotes":40,"sourceRow":1223,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[7095,25571],"totalVotes":32666,"registeredVoters":44492,"undervotes":3056,"overvotes":71,"sourceRow":1224,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[6253,20030],"totalVotes":26283,"registeredVoters":41815,"undervotes":3049,"overvotes":65,"sourceRow":1225,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[7515,17868],"totalVotes":25383,"registeredVoters":38242,"undervotes":3301,"overvotes":67,"sourceRow":1226,"partiallyEligible":false}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"u-s-representative-district-12","title":"U.S. Representative, District 12","sourceSheet":"110 - U.S. Representative, Dist","candidates":[{"name":"NANCY PELOSI","party":null,"sourceColumn":8},{"name":"PRESTON PICUS","party":null,"sourceColumn":9}],"citywide":{"votes":[274035,64810],"totalVotes":338845,"registeredVoters":455043,"undervotes":29471,"overvotes":130,"sourceRow":1074},"districts":[{"district":1,"eligible":true,"votes":[25689,7260],"totalVotes":32949,"registeredVoters":43818,"undervotes":3076,"overvotes":8,"sourceRow":1063,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[32027,9144],"totalVotes":41171,"registeredVoters":51388,"undervotes":3974,"overvotes":10,"sourceRow":1064,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[23553,5987],"totalVotes":29540,"registeredVoters":41720,"undervotes":3131,"overvotes":11,"sourceRow":1065,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[23510,7391],"totalVotes":30901,"registeredVoters":43327,"undervotes":3551,"overvotes":10,"sourceRow":1066,"partiallyEligible":true},{"district":5,"eligible":true,"votes":[35866,7689],"totalVotes":43555,"registeredVoters":56261,"undervotes":3246,"overvotes":13,"sourceRow":1067,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[23616,5568],"totalVotes":29184,"registeredVoters":44187,"undervotes":2665,"overvotes":17,"sourceRow":1068,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[11933,2894],"totalVotes":14827,"registeredVoters":18762,"undervotes":1282,"overvotes":5,"sourceRow":1069,"partiallyEligible":true},{"district":8,"eligible":true,"votes":[42239,7028],"totalVotes":49267,"registeredVoters":58958,"undervotes":2878,"overvotes":17,"sourceRow":1070,"partiallyEligible":true},{"district":9,"eligible":true,"votes":[27102,6156],"totalVotes":33258,"registeredVoters":44492,"undervotes":2517,"overvotes":18,"sourceRow":1071,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[22494,4236],"totalVotes":26730,"registeredVoters":41546,"undervotes":2455,"overvotes":15,"sourceRow":1072,"partiallyEligible":true},{"district":11,"eligible":true,"votes":[6006,1457],"totalVotes":7463,"registeredVoters":10584,"undervotes":696,"overvotes":6,"sourceRow":1073,"partiallyEligible":true}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"u-s-representative-district-14","title":"U.S. Representative, District 14","sourceSheet":"120 - U.S. Representative, Dist","candidates":[{"name":"JACKIE SPEIER","party":null,"sourceColumn":8},{"name":"ANGEL CARDENAS","party":null,"sourceColumn":9}],"citywide":{"votes":[34294,6702],"totalVotes":40996,"registeredVoters":58530,"undervotes":5074,"overvotes":12,"sourceRow":171},"districts":[{"district":1,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":2,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":3,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[309,59],"totalVotes":368,"registeredVoters":502,"undervotes":47,"overvotes":0,"sourceRow":166,"partiallyEligible":true},{"district":5,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":6,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[18411,3765],"totalVotes":22176,"registeredVoters":29667,"undervotes":2366,"overvotes":3,"sourceRow":167,"partiallyEligible":true},{"district":8,"eligible":true,"votes":[249,56],"totalVotes":305,"registeredVoters":434,"undervotes":34,"overvotes":0,"sourceRow":168,"partiallyEligible":true},{"district":9,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[153,29],"totalVotes":182,"registeredVoters":269,"undervotes":15,"overvotes":0,"sourceRow":169,"partiallyEligible":true},{"district":11,"eligible":true,"votes":[15172,2793],"totalVotes":17965,"registeredVoters":27658,"undervotes":2612,"overvotes":9,"sourceRow":170,"partiallyEligible":true}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}}]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"electionDate":"2018-11-06","electionName":"2018-11-06 San Francisco candidate results","districtYear":2012,"certifiedDate":"2018-11-27","downloadedDate":"2026-09-26","source":"https://www.sfelections.org/results/20181106/data/20181127/20181127_sov.xlsx","sourceSha256":"71ad5e4a8abbec7a2f27c341744207953289a6b52899afaa615aa008580683c7","geography":"Votes cast in San Francisco, reported by supervisorial district. Congressional and state legislative contests include only eligible portions of each district.","method":"Candidate vote share divides a candidate count by all valid votes in that contest and area. Write-ins are included when reported. District eligibility uses registered-voter counts in the official workbook compared with the election’s citywide presidential or gubernatorial contest. Missing supervisorial rows indicate no eligible voters, not zero support. County cumulative votes, when present, are recorded separately as unassigned.","contests":[{"id":"governor","title":"Governor","sourceSheet":"100 - Governor","candidates":[{"name":"JOHN H. COX","party":null,"sourceColumn":8},{"name":"GAVIN NEWSOM","party":null,"sourceColumn":9}],"citywide":{"votes":[49181,312181],"totalVotes":361362,"registeredVoters":500516,"undervotes":11236,"overvotes":144,"sourceRow":1241},"districts":[{"district":1,"eligible":true,"votes":[5025,26726],"totalVotes":31751,"registeredVoters":42767,"undervotes":981,"overvotes":4,"sourceRow":1230,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[6904,32646],"totalVotes":39550,"registeredVoters":50394,"undervotes":839,"overvotes":12,"sourceRow":1231,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[4092,23498],"totalVotes":27590,"registeredVoters":39799,"undervotes":967,"overvotes":12,"sourceRow":1232,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[6349,24281],"totalVotes":30630,"registeredVoters":42953,"undervotes":1047,"overvotes":14,"sourceRow":1233,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[3007,37718],"totalVotes":40725,"registeredVoters":53744,"undervotes":1283,"overvotes":23,"sourceRow":1234,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[3450,24766],"totalVotes":28216,"registeredVoters":43321,"undervotes":922,"overvotes":18,"sourceRow":1235,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[6753,28819],"totalVotes":35572,"registeredVoters":47076,"undervotes":972,"overvotes":13,"sourceRow":1236,"partiallyEligible":false},{"district":8,"eligible":true,"votes":[3219,44050],"totalVotes":47269,"registeredVoters":58122,"undervotes":1320,"overvotes":12,"sourceRow":1237,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[2782,27696],"totalVotes":30478,"registeredVoters":42988,"undervotes":1268,"overvotes":13,"sourceRow":1238,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[3239,22362],"totalVotes":25601,"registeredVoters":41862,"undervotes":843,"overvotes":6,"sourceRow":1239,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[4361,19619],"totalVotes":23980,"registeredVoters":37490,"undervotes":794,"overvotes":17,"sourceRow":1240,"partiallyEligible":false}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"lieutenant-governor","title":"Lieutenant Governor","sourceSheet":"105 - Lieutenant Governor","candidates":[{"name":"ED HERNANDEZ","party":null,"sourceColumn":8},{"name":"ELENI KOUNALAKIS","party":null,"sourceColumn":9}],"citywide":{"votes":[153733,172741],"totalVotes":326474,"registeredVoters":500516,"undervotes":45920,"overvotes":348,"sourceRow":1241},"districts":[{"district":1,"eligible":true,"votes":[13262,15090],"totalVotes":28352,"registeredVoters":42767,"undervotes":4370,"overvotes":14,"sourceRow":1230,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[13996,21086],"totalVotes":35082,"registeredVoters":50394,"undervotes":5294,"overvotes":25,"sourceRow":1231,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[10990,13723],"totalVotes":24713,"registeredVoters":39799,"undervotes":3838,"overvotes":18,"sourceRow":1232,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[12747,13802],"totalVotes":26549,"registeredVoters":42953,"undervotes":5122,"overvotes":20,"sourceRow":1233,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[18310,19466],"totalVotes":37776,"registeredVoters":53744,"undervotes":4215,"overvotes":40,"sourceRow":1234,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[11502,14057],"totalVotes":25559,"registeredVoters":43321,"undervotes":3546,"overvotes":51,"sourceRow":1235,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[14598,16980],"totalVotes":31578,"registeredVoters":47076,"undervotes":4956,"overvotes":23,"sourceRow":1236,"partiallyEligible":false},{"district":8,"eligible":true,"votes":[19949,24009],"totalVotes":43958,"registeredVoters":58122,"undervotes":4610,"overvotes":33,"sourceRow":1237,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[15784,12490],"totalVotes":28274,"registeredVoters":42988,"undervotes":3439,"overvotes":46,"sourceRow":1238,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[10983,12176],"totalVotes":23159,"registeredVoters":41862,"undervotes":3257,"overvotes":34,"sourceRow":1239,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[11612,9862],"totalVotes":21474,"registeredVoters":37490,"undervotes":3273,"overvotes":44,"sourceRow":1240,"partiallyEligible":false}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"secretary-of-state","title":"Secretary of State","sourceSheet":"110 - Secretary of State","candidates":[{"name":"ALEX PADILLA","party":null,"sourceColumn":8},{"name":"MARK P. MEUSER","party":null,"sourceColumn":9}],"citywide":{"votes":[309367,43538],"totalVotes":352905,"registeredVoters":500516,"undervotes":19728,"overvotes":109,"sourceRow":1241},"districts":[{"district":1,"eligible":true,"votes":[26564,4372],"totalVotes":30936,"registeredVoters":42767,"undervotes":1791,"overvotes":9,"sourceRow":1230,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[31815,6500],"totalVotes":38315,"registeredVoters":50394,"undervotes":2079,"overvotes":7,"sourceRow":1231,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[23002,3686],"totalVotes":26688,"registeredVoters":39799,"undervotes":1873,"overvotes":8,"sourceRow":1232,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[23910,5360],"totalVotes":29270,"registeredVoters":42953,"undervotes":2415,"overvotes":6,"sourceRow":1233,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[37553,2794],"totalVotes":40347,"registeredVoters":53744,"undervotes":1666,"overvotes":18,"sourceRow":1234,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[24105,3289],"totalVotes":27394,"registeredVoters":43321,"undervotes":1747,"overvotes":15,"sourceRow":1235,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[28853,5804],"totalVotes":34657,"registeredVoters":47076,"undervotes":1894,"overvotes":6,"sourceRow":1236,"partiallyEligible":false},{"district":8,"eligible":true,"votes":[44056,2919],"totalVotes":46975,"registeredVoters":58122,"undervotes":1621,"overvotes":5,"sourceRow":1237,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[27996,2344],"totalVotes":30340,"registeredVoters":42988,"undervotes":1405,"overvotes":14,"sourceRow":1238,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[21939,2819],"totalVotes":24758,"registeredVoters":41862,"undervotes":1685,"overvotes":7,"sourceRow":1239,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[19574,3651],"totalVotes":23225,"registeredVoters":37490,"undervotes":1552,"overvotes":14,"sourceRow":1240,"partiallyEligible":false}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"state-controller","title":"State Controller","sourceSheet":"115 - State Controller","candidates":[{"name":"KONSTANTINOS RODITIS","party":null,"sourceColumn":8},{"name":"BETTY T. YEE","party":null,"sourceColumn":9}],"citywide":{"votes":[43021,311559],"totalVotes":354580,"registeredVoters":500516,"undervotes":18077,"overvotes":85,"sourceRow":1241},"districts":[{"district":1,"eligible":true,"votes":[4025,27231],"totalVotes":31256,"registeredVoters":42767,"undervotes":1473,"overvotes":7,"sourceRow":1230,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[7221,30980],"totalVotes":38201,"registeredVoters":50394,"undervotes":2195,"overvotes":5,"sourceRow":1231,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[3794,23074],"totalVotes":26868,"registeredVoters":39799,"undervotes":1699,"overvotes":2,"sourceRow":1232,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[4674,25192],"totalVotes":29866,"registeredVoters":42953,"undervotes":1817,"overvotes":8,"sourceRow":1233,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[2979,37280],"totalVotes":40259,"registeredVoters":53744,"undervotes":1764,"overvotes":8,"sourceRow":1234,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[3436,23952],"totalVotes":27388,"registeredVoters":43321,"undervotes":1753,"overvotes":15,"sourceRow":1235,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[5535,29496],"totalVotes":35031,"registeredVoters":47076,"undervotes":1519,"overvotes":7,"sourceRow":1236,"partiallyEligible":false},{"district":8,"eligible":true,"votes":[3155,43720],"totalVotes":46875,"registeredVoters":58122,"undervotes":1723,"overvotes":3,"sourceRow":1237,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[2350,28006],"totalVotes":30356,"registeredVoters":42988,"undervotes":1389,"overvotes":14,"sourceRow":1238,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[2661,22343],"totalVotes":25004,"registeredVoters":41862,"undervotes":1440,"overvotes":6,"sourceRow":1239,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[3191,20285],"totalVotes":23476,"registeredVoters":37490,"undervotes":1305,"overvotes":10,"sourceRow":1240,"partiallyEligible":false}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"state-treasurer","title":"State Treasurer","sourceSheet":"120 - State Treasurer","candidates":[{"name":"GREG CONLON","party":null,"sourceColumn":8},{"name":"FIONA MA","party":null,"sourceColumn":9}],"citywide":{"votes":[45699,306998],"totalVotes":352697,"registeredVoters":500516,"undervotes":19947,"overvotes":98,"sourceRow":1241},"districts":[{"district":1,"eligible":true,"votes":[4232,26867],"totalVotes":31099,"registeredVoters":42767,"undervotes":1630,"overvotes":7,"sourceRow":1230,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[7508,30503],"totalVotes":38011,"registeredVoters":50394,"undervotes":2381,"overvotes":9,"sourceRow":1231,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[4005,22761],"totalVotes":26766,"registeredVoters":39799,"undervotes":1797,"overvotes":6,"sourceRow":1232,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[5065,24872],"totalVotes":29937,"registeredVoters":42953,"undervotes":1746,"overvotes":8,"sourceRow":1233,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[3266,36588],"totalVotes":39854,"registeredVoters":53744,"undervotes":2161,"overvotes":16,"sourceRow":1234,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[3602,23758],"totalVotes":27360,"registeredVoters":43321,"undervotes":1786,"overvotes":10,"sourceRow":1235,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[5739,29209],"totalVotes":34948,"registeredVoters":47076,"undervotes":1603,"overvotes":6,"sourceRow":1236,"partiallyEligible":false},{"district":8,"eligible":true,"votes":[3434,42903],"totalVotes":46337,"registeredVoters":58122,"undervotes":2258,"overvotes":6,"sourceRow":1237,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[2593,27391],"totalVotes":29984,"registeredVoters":42988,"undervotes":1766,"overvotes":9,"sourceRow":1238,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[2861,22082],"totalVotes":24943,"registeredVoters":41862,"undervotes":1499,"overvotes":8,"sourceRow":1239,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[3394,20064],"totalVotes":23458,"registeredVoters":37490,"undervotes":1320,"overvotes":13,"sourceRow":1240,"partiallyEligible":false}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"attorney-general","title":"Attorney General","sourceSheet":"125 - Attorney General","candidates":[{"name":"STEVEN C BAILEY","party":null,"sourceColumn":8},{"name":"XAVIER BECERRA","party":null,"sourceColumn":9}],"citywide":{"votes":[47070,305501],"totalVotes":352571,"registeredVoters":500516,"undervotes":20077,"overvotes":94,"sourceRow":1241},"districts":[{"district":1,"eligible":true,"votes":[4675,26222],"totalVotes":30897,"registeredVoters":42767,"undervotes":1834,"overvotes":5,"sourceRow":1230,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[6910,31355],"totalVotes":38265,"registeredVoters":50394,"undervotes":2131,"overvotes":5,"sourceRow":1231,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[3930,22744],"totalVotes":26674,"registeredVoters":39799,"undervotes":1889,"overvotes":6,"sourceRow":1232,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[5882,23392],"totalVotes":29274,"registeredVoters":42953,"undervotes":2413,"overvotes":4,"sourceRow":1233,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[2984,37321],"totalVotes":40305,"registeredVoters":53744,"undervotes":1711,"overvotes":15,"sourceRow":1234,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[3593,23724],"totalVotes":27317,"registeredVoters":43321,"undervotes":1827,"overvotes":12,"sourceRow":1235,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[6330,28339],"totalVotes":34669,"registeredVoters":47076,"undervotes":1884,"overvotes":4,"sourceRow":1236,"partiallyEligible":false},{"district":8,"eligible":true,"votes":[3124,43784],"totalVotes":46908,"registeredVoters":58122,"undervotes":1688,"overvotes":5,"sourceRow":1237,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[2523,27819],"totalVotes":30342,"registeredVoters":42988,"undervotes":1407,"overvotes":10,"sourceRow":1238,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[3145,21604],"totalVotes":24749,"registeredVoters":41862,"undervotes":1688,"overvotes":13,"sourceRow":1239,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[3974,19197],"totalVotes":23171,"registeredVoters":37490,"undervotes":1605,"overvotes":15,"sourceRow":1240,"partiallyEligible":false}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"insurance-commissioner","title":"Insurance Commissioner","sourceSheet":"130 - Insurance Commissioner","candidates":[{"name":"RICARDO LARA","party":null,"sourceColumn":8},{"name":"STEVE POIZNER","party":null,"sourceColumn":9}],"citywide":{"votes":[235299,102364],"totalVotes":337663,"registeredVoters":500516,"undervotes":34922,"overvotes":157,"sourceRow":1241},"districts":[{"district":1,"eligible":true,"votes":[20160,9461],"totalVotes":29621,"registeredVoters":42767,"undervotes":3106,"overvotes":9,"sourceRow":1230,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[21150,14962],"totalVotes":36112,"registeredVoters":50394,"undervotes":4276,"overvotes":13,"sourceRow":1231,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[16819,8537],"totalVotes":25356,"registeredVoters":39799,"undervotes":3200,"overvotes":13,"sourceRow":1232,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[18401,9477],"totalVotes":27878,"registeredVoters":42953,"undervotes":3805,"overvotes":8,"sourceRow":1233,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[28844,9828],"totalVotes":38672,"registeredVoters":53744,"undervotes":3334,"overvotes":25,"sourceRow":1234,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[18301,7924],"totalVotes":26225,"registeredVoters":43321,"undervotes":2914,"overvotes":17,"sourceRow":1235,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[20987,12212],"totalVotes":33199,"registeredVoters":47076,"undervotes":3352,"overvotes":6,"sourceRow":1236,"partiallyEligible":false},{"district":8,"eligible":true,"votes":[33598,11535],"totalVotes":45133,"registeredVoters":58122,"undervotes":3446,"overvotes":22,"sourceRow":1237,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[23122,6169],"totalVotes":29291,"registeredVoters":42988,"undervotes":2453,"overvotes":15,"sourceRow":1238,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[17514,6305],"totalVotes":23819,"registeredVoters":41862,"undervotes":2617,"overvotes":14,"sourceRow":1239,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[16403,5954],"totalVotes":22357,"registeredVoters":37490,"undervotes":2419,"overvotes":15,"sourceRow":1240,"partiallyEligible":false}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"board-of-equalization-district-2","title":"Board of Equalization, District 2","sourceSheet":"135 - Board of Equalization, Di","candidates":[{"name":"MALIA COHEN","party":null,"sourceColumn":8},{"name":"MARK BURNS","party":null,"sourceColumn":9}],"citywide":{"votes":[292973,47753],"totalVotes":340726,"registeredVoters":500516,"undervotes":31941,"overvotes":75,"sourceRow":1241},"districts":[{"district":1,"eligible":true,"votes":[25236,4637],"totalVotes":29873,"registeredVoters":42767,"undervotes":2863,"overvotes":0,"sourceRow":1230,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[29554,7094],"totalVotes":36648,"registeredVoters":50394,"undervotes":3747,"overvotes":6,"sourceRow":1231,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[21660,3986],"totalVotes":25646,"registeredVoters":39799,"undervotes":2920,"overvotes":3,"sourceRow":1232,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[22758,5699],"totalVotes":28457,"registeredVoters":42953,"undervotes":3229,"overvotes":5,"sourceRow":1233,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[35683,3101],"totalVotes":38784,"registeredVoters":53744,"undervotes":3233,"overvotes":14,"sourceRow":1234,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[22903,3558],"totalVotes":26461,"registeredVoters":43321,"undervotes":2683,"overvotes":12,"sourceRow":1235,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[27307,6316],"totalVotes":33623,"registeredVoters":47076,"undervotes":2926,"overvotes":8,"sourceRow":1236,"partiallyEligible":false},{"district":8,"eligible":true,"votes":[41597,3378],"totalVotes":44975,"registeredVoters":58122,"undervotes":3622,"overvotes":4,"sourceRow":1237,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[26597,2713],"totalVotes":29310,"registeredVoters":42988,"undervotes":2441,"overvotes":8,"sourceRow":1238,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[20826,3387],"totalVotes":24213,"registeredVoters":41862,"undervotes":2234,"overvotes":3,"sourceRow":1239,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[18852,3884],"totalVotes":22736,"registeredVoters":37490,"undervotes":2043,"overvotes":12,"sourceRow":1240,"partiallyEligible":false}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"u-s-senator","title":"U.S. Senator","sourceSheet":"140 - U.S. Senator","candidates":[{"name":"DIANNE FEINSTEIN","party":null,"sourceColumn":8},{"name":"KEVIN DE LEON","party":null,"sourceColumn":9}],"citywide":{"votes":[226167,125954],"totalVotes":352121,"registeredVoters":500516,"undervotes":20247,"overvotes":374,"sourceRow":1241},"districts":[{"district":1,"eligible":true,"votes":[19414,11396],"totalVotes":30810,"registeredVoters":42767,"undervotes":1907,"overvotes":19,"sourceRow":1230,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[26668,11447],"totalVotes":38115,"registeredVoters":50394,"undervotes":2260,"overvotes":26,"sourceRow":1231,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[17800,8998],"totalVotes":26798,"registeredVoters":39799,"undervotes":1746,"overvotes":25,"sourceRow":1232,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[19072,10235],"totalVotes":29307,"registeredVoters":42953,"undervotes":2367,"overvotes":17,"sourceRow":1233,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[24793,15594],"totalVotes":40387,"registeredVoters":53744,"undervotes":1601,"overvotes":43,"sourceRow":1234,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[17449,9939],"totalVotes":27388,"registeredVoters":43321,"undervotes":1711,"overvotes":57,"sourceRow":1235,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[22946,11251],"totalVotes":34197,"registeredVoters":47076,"undervotes":2333,"overvotes":27,"sourceRow":1236,"partiallyEligible":false},{"district":8,"eligible":true,"votes":[29815,17173],"totalVotes":46988,"registeredVoters":58122,"undervotes":1589,"overvotes":24,"sourceRow":1237,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[16901,13412],"totalVotes":30313,"registeredVoters":42988,"undervotes":1398,"overvotes":48,"sourceRow":1238,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[16561,8257],"totalVotes":24818,"registeredVoters":41862,"undervotes":1602,"overvotes":30,"sourceRow":1239,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[14748,8252],"totalVotes":23000,"registeredVoters":37490,"undervotes":1733,"overvotes":58,"sourceRow":1240,"partiallyEligible":false}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"u-s-representative-district-12","title":"U.S. Representative, District 12","sourceSheet":"145 - U.S. Representative, Dist","candidates":[{"name":"LISA REMMER","party":null,"sourceColumn":8},{"name":"NANCY PELOSI","party":null,"sourceColumn":9}],"citywide":{"votes":[41780,275292],"totalVotes":317072,"registeredVoters":443570,"undervotes":15225,"overvotes":107,"sourceRow":1088},"districts":[{"district":1,"eligible":true,"votes":[4939,26328],"totalVotes":31267,"registeredVoters":42767,"undervotes":1463,"overvotes":6,"sourceRow":1077,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[7354,31793],"totalVotes":39147,"registeredVoters":50394,"undervotes":1244,"overvotes":10,"sourceRow":1078,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[4192,22833],"totalVotes":27025,"registeredVoters":39799,"undervotes":1534,"overvotes":10,"sourceRow":1079,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[5717,23866],"totalVotes":29583,"registeredVoters":42453,"undervotes":1719,"overvotes":10,"sourceRow":1080,"partiallyEligible":true},{"district":5,"eligible":true,"votes":[3318,36993],"totalVotes":40311,"registeredVoters":53744,"undervotes":1707,"overvotes":13,"sourceRow":1081,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[3625,23906],"totalVotes":27531,"registeredVoters":43321,"undervotes":1611,"overvotes":14,"sourceRow":1082,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[2212,12123],"totalVotes":14335,"registeredVoters":18498,"undervotes":581,"overvotes":4,"sourceRow":1083,"partiallyEligible":true},{"district":8,"eligible":true,"votes":[3488,43028],"totalVotes":46516,"registeredVoters":57714,"undervotes":1786,"overvotes":14,"sourceRow":1084,"partiallyEligible":true},{"district":9,"eligible":true,"votes":[2767,27194],"totalVotes":29961,"registeredVoters":42988,"undervotes":1787,"overvotes":11,"sourceRow":1085,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[3096,21796],"totalVotes":24892,"registeredVoters":41589,"undervotes":1403,"overvotes":9,"sourceRow":1086,"partiallyEligible":true},{"district":11,"eligible":true,"votes":[1072,5432],"totalVotes":6504,"registeredVoters":10303,"undervotes":390,"overvotes":6,"sourceRow":1087,"partiallyEligible":true}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"u-s-representative-district-14","title":"U.S. Representative, District 14","sourceSheet":"155 - U.S. Representative, Dist","candidates":[{"name":"CRISTINA OSMEÑA","party":null,"sourceColumn":8},{"name":"JACKIE SPEIER","party":null,"sourceColumn":9}],"citywide":{"votes":[6487,31632],"totalVotes":38119,"registeredVoters":56946,"undervotes":2211,"overvotes":8,"sourceRow":171},"districts":[{"district":1,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":2,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":3,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[76,282],"totalVotes":358,"registeredVoters":500,"undervotes":21,"overvotes":0,"sourceRow":166,"partiallyEligible":true},{"district":5,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":6,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[3612,17071],"totalVotes":20683,"registeredVoters":28578,"undervotes":949,"overvotes":5,"sourceRow":167,"partiallyEligible":true},{"district":8,"eligible":true,"votes":[38,236],"totalVotes":274,"registeredVoters":408,"undervotes":11,"overvotes":0,"sourceRow":168,"partiallyEligible":true},{"district":9,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[18,120],"totalVotes":138,"registeredVoters":273,"undervotes":8,"overvotes":0,"sourceRow":169,"partiallyEligible":true},{"district":11,"eligible":true,"votes":[2743,13923],"totalVotes":16666,"registeredVoters":27187,"undervotes":1222,"overvotes":3,"sourceRow":170,"partiallyEligible":true}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}}]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"electionDate":"2020-11-03","electionName":"2020-11-03 San Francisco candidate results","districtYear":2012,"certifiedDate":"2020-12-01","downloadedDate":"2026-09-26","source":"https://www.sfelections.org/results/20201103/data/20201201/20201201_dsov.xlsx","sourceSha256":"539db60fee6ec633e132b1aa64665a1e1f5ddbc3e5fc56d474bedbcc972d5131","geography":"Votes cast in San Francisco, reported by supervisorial district. Congressional and state legislative contests include only eligible portions of each district.","method":"Candidate vote share divides a candidate count by all valid votes in that contest and area. Write-ins are included when reported. District eligibility uses registered-voter counts in the official workbook compared with the election’s citywide presidential or gubernatorial contest. Missing supervisorial rows indicate no eligible voters, not zero support. County cumulative votes, when present, are recorded separately as unassigned.","contests":[{"id":"president-and-vice-president","title":"PRESIDENT AND VICE PRESIDENT","sourceSheet":"Sheet2","candidates":[{"name":"JOSEPH R. BIDEN AND KAMALA D. HARRIS","party":null,"sourceColumn":7},{"name":"DONALD J. TRUMP AND MICHAEL R. PENCE","party":null,"sourceColumn":9},{"name":"GLORIA LA RIVA AND SUNIL FREEMAN","party":null,"sourceColumn":11},{"name":"ROQUE \"ROCKY\" DE LA FUENTE GUERRA AND KANYE OMARI WEST","party":null,"sourceColumn":14},{"name":"HOWIE HAWKINS AND ANGELA NICOLE WALKER","party":null,"sourceColumn":16},{"name":"JO JORGENSEN AND JEREMY \"SPIKE\" COHEN","party":null,"sourceColumn":19},{"name":"Write-in","party":null,"sourceColumn":21}],"citywide":{"votes":[378156,56417,1543,1262,2781,3299,95],"totalVotes":443553,"registeredVoters":521099,"undervotes":5658,"overvotes":609,"sourceRow":14},"districts":[{"district":1,"eligible":true,"votes":[32986,5832,124,104,259,326,5],"totalVotes":39636,"registeredVoters":45097,"undervotes":541,"overvotes":43,"sourceRow":51,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[39507,5306,49,115,155,536,6],"totalVotes":45674,"registeredVoters":51074,"undervotes":706,"overvotes":24,"sourceRow":55,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[27656,4384,101,108,200,312,8],"totalVotes":32769,"registeredVoters":39734,"undervotes":437,"overvotes":47,"sourceRow":59,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[31691,7876,175,136,257,282,13],"totalVotes":40430,"registeredVoters":46857,"undervotes":742,"overvotes":29,"sourceRow":63,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[42210,3242,138,102,349,287,13],"totalVotes":46341,"registeredVoters":53491,"undervotes":480,"overvotes":40,"sourceRow":67,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[29918,4485,170,132,254,319,3],"totalVotes":35281,"registeredVoters":45820,"undervotes":437,"overvotes":94,"sourceRow":71,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[35632,6893,108,117,208,277,15],"totalVotes":43250,"registeredVoters":48874,"undervotes":584,"overvotes":48,"sourceRow":75,"partiallyEligible":false},{"district":8,"eligible":true,"votes":[49284,2793,137,85,313,313,12],"totalVotes":52937,"registeredVoters":58419,"undervotes":390,"overvotes":33,"sourceRow":79,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[32697,3745,179,87,289,197,9],"totalVotes":37203,"registeredVoters":44282,"undervotes":418,"overvotes":62,"sourceRow":83,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[29934,5145,182,142,284,249,4],"totalVotes":35940,"registeredVoters":46114,"undervotes":456,"overvotes":77,"sourceRow":87,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[26641,6716,180,134,213,201,7],"totalVotes":34092,"registeredVoters":41337,"undervotes":467,"overvotes":112,"sourceRow":91,"partiallyEligible":false}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0,0,0,0,0,0]}},{"id":"us-house-of-rep-district-12","title":"US House of Rep District 12","sourceSheet":"Sheet3","candidates":[{"name":"SHAHID BUTTAR","party":"DEM","sourceColumn":7},{"name":"NANCY PELOSI","party":"DEM","sourceColumn":9}],"citywide":{"votes":[81174,281776],"totalVotes":362950,"registeredVoters":460309,"undervotes":34157,"overvotes":409,"sourceRow":14},"districts":[{"district":1,"eligible":true,"votes":[8994,27186],"totalVotes":36180,"registeredVoters":45097,"undervotes":4003,"overvotes":37,"sourceRow":43,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[8579,33982],"totalVotes":42561,"registeredVoters":51074,"undervotes":3827,"overvotes":16,"sourceRow":47,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[7175,22847],"totalVotes":30022,"registeredVoters":39734,"undervotes":3205,"overvotes":26,"sourceRow":51,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[10075,25871],"totalVotes":35946,"registeredVoters":46299,"undervotes":4715,"overvotes":40,"sourceRow":55,"partiallyEligible":true},{"district":5,"eligible":true,"votes":[8808,34545],"totalVotes":43353,"registeredVoters":53491,"undervotes":3458,"overvotes":50,"sourceRow":59,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[7684,24927],"totalVotes":32611,"registeredVoters":45820,"undervotes":3123,"overvotes":78,"sourceRow":63,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[3379,12868],"totalVotes":16247,"registeredVoters":19388,"undervotes":1538,"overvotes":6,"sourceRow":67,"partiallyEligible":true},{"district":8,"eligible":true,"votes":[8162,41702],"totalVotes":49864,"registeredVoters":57979,"undervotes":3068,"overvotes":33,"sourceRow":71,"partiallyEligible":true},{"district":9,"eligible":true,"votes":[8376,26141],"totalVotes":34517,"registeredVoters":44282,"undervotes":3122,"overvotes":44,"sourceRow":75,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[7583,25438],"totalVotes":33021,"registeredVoters":45804,"undervotes":3147,"overvotes":68,"sourceRow":79,"partiallyEligible":true},{"district":11,"eligible":true,"votes":[2359,6269],"totalVotes":8628,"registeredVoters":11341,"undervotes":951,"overvotes":11,"sourceRow":83,"partiallyEligible":true}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"us-house-of-rep-district-14","title":"US House of Rep District 14","sourceSheet":"Sheet5","candidates":[{"name":"RAN S. PETEL","party":"REP","sourceColumn":7},{"name":"JACKIE SPEIER","party":"DEM","sourceColumn":9}],"citywide":{"votes":[9179,39670],"totalVotes":48849,"registeredVoters":60790,"undervotes":3434,"overvotes":21,"sourceRow":14},"districts":[{"district":1,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":2,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":3,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[105,355],"totalVotes":460,"registeredVoters":558,"undervotes":40,"overvotes":0,"sourceRow":43,"partiallyEligible":true},{"district":5,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":6,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[4560,20062],"totalVotes":24622,"registeredVoters":29486,"undervotes":1462,"overvotes":7,"sourceRow":47,"partiallyEligible":true},{"district":8,"eligible":true,"votes":[69,299],"totalVotes":368,"registeredVoters":440,"undervotes":27,"overvotes":0,"sourceRow":51,"partiallyEligible":true},{"district":9,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[35,185],"totalVotes":220,"registeredVoters":310,"undervotes":17,"overvotes":0,"sourceRow":55,"partiallyEligible":true},{"district":11,"eligible":true,"votes":[4410,18769],"totalVotes":23179,"registeredVoters":29996,"undervotes":1888,"overvotes":14,"sourceRow":59,"partiallyEligible":true}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"state-senator-district-11","title":"State Senator District 11","sourceSheet":"Sheet6","candidates":[{"name":"SCOTT WIENER","party":"DEM","sourceColumn":7},{"name":"JACKIE FIELDER","party":"DEM","sourceColumn":9}],"citywide":{"votes":[229160,168348],"totalVotes":397508,"registeredVoters":521099,"undervotes":51645,"overvotes":667,"sourceRow":14},"districts":[{"district":1,"eligible":true,"votes":[18785,16307],"totalVotes":35092,"registeredVoters":45097,"undervotes":5087,"overvotes":41,"sourceRow":51,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[27274,13471],"totalVotes":40745,"registeredVoters":51074,"undervotes":5629,"overvotes":30,"sourceRow":55,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[17647,11462],"totalVotes":29109,"registeredVoters":39734,"undervotes":4106,"overvotes":38,"sourceRow":59,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[18309,16430],"totalVotes":34739,"registeredVoters":46857,"undervotes":6416,"overvotes":46,"sourceRow":63,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[24116,18611],"totalVotes":42727,"registeredVoters":53491,"undervotes":4067,"overvotes":67,"sourceRow":67,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[19238,12112],"totalVotes":31350,"registeredVoters":45820,"undervotes":4372,"overvotes":90,"sourceRow":71,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[22651,15511],"totalVotes":38162,"registeredVoters":48874,"undervotes":5667,"overvotes":53,"sourceRow":75,"partiallyEligible":false},{"district":8,"eligible":true,"votes":[30724,19180],"totalVotes":49904,"registeredVoters":58419,"undervotes":3413,"overvotes":43,"sourceRow":79,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[16371,17528],"totalVotes":33899,"registeredVoters":44282,"undervotes":3721,"overvotes":63,"sourceRow":83,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[18314,13616],"totalVotes":31930,"registeredVoters":46114,"undervotes":4460,"overvotes":83,"sourceRow":87,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[15731,14120],"totalVotes":29851,"registeredVoters":41337,"undervotes":4707,"overvotes":113,"sourceRow":91,"partiallyEligible":false}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"state-assembly-member-district-17","title":"STATE ASSEMBLY MEMBER District 17","sourceSheet":"Sheet7","candidates":[{"name":"STARCHILD","party":"LIB","sourceColumn":7},{"name":"DAVID CHIU","party":"DEM","sourceColumn":9}],"citywide":{"votes":[23834,190731],"totalVotes":214565,"registeredVoters":300579,"undervotes":40112,"overvotes":119,"sourceRow":14},"districts":[{"district":1,"eligible":true,"votes":[10,126],"totalVotes":136,"registeredVoters":175,"undervotes":23,"overvotes":1,"sourceRow":47,"partiallyEligible":true},{"district":2,"eligible":true,"votes":[566,4768],"totalVotes":5334,"registeredVoters":6971,"undervotes":934,"overvotes":0,"sourceRow":51,"partiallyEligible":true},{"district":3,"eligible":true,"votes":[3479,24497],"totalVotes":27976,"registeredVoters":39734,"undervotes":5261,"overvotes":16,"sourceRow":55,"partiallyEligible":false},{"district":4,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[2606,26847],"totalVotes":29453,"registeredVoters":40227,"undervotes":5706,"overvotes":14,"sourceRow":59,"partiallyEligible":true},{"district":6,"eligible":true,"votes":[3900,26210],"totalVotes":30110,"registeredVoters":45820,"undervotes":5669,"overvotes":33,"sourceRow":63,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[633,5871],"totalVotes":6504,"registeredVoters":8246,"undervotes":1150,"overvotes":2,"sourceRow":67,"partiallyEligible":true},{"district":8,"eligible":true,"votes":[3449,42387],"totalVotes":45836,"registeredVoters":57979,"undervotes":7119,"overvotes":10,"sourceRow":71,"partiallyEligible":true},{"district":9,"eligible":true,"votes":[3564,27615],"totalVotes":31179,"registeredVoters":44282,"undervotes":6486,"overvotes":18,"sourceRow":75,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[4266,25903],"totalVotes":30169,"registeredVoters":45804,"undervotes":6047,"overvotes":20,"sourceRow":79,"partiallyEligible":true},{"district":11,"eligible":true,"votes":[1361,6507],"totalVotes":7868,"registeredVoters":11341,"undervotes":1717,"overvotes":5,"sourceRow":83,"partiallyEligible":true}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"state-assembly-member-district-19","title":"STATE ASSEMBLY MEMBER District 19","sourceSheet":"Sheet8","candidates":[{"name":"JOHN P. MCDONNELL","party":"REP","sourceColumn":7},{"name":"PHIL TING","party":"DEM","sourceColumn":9}],"citywide":{"votes":[39283,134175],"totalVotes":173458,"registeredVoters":220520,"undervotes":21504,"overvotes":62,"sourceRow":14},"districts":[{"district":1,"eligible":true,"votes":[7162,28336],"totalVotes":35498,"registeredVoters":44922,"undervotes":4548,"overvotes":14,"sourceRow":43,"partiallyEligible":true},{"district":2,"eligible":true,"votes":[9439,26376],"totalVotes":35815,"registeredVoters":44103,"undervotes":4314,"overvotes":7,"sourceRow":47,"partiallyEligible":true},{"district":3,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[8706,27842],"totalVotes":36548,"registeredVoters":46857,"undervotes":4634,"overvotes":19,"sourceRow":51,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[1301,9041],"totalVotes":10342,"registeredVoters":13264,"undervotes":1344,"overvotes":2,"sourceRow":55,"partiallyEligible":true},{"district":6,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[7577,25084],"totalVotes":32661,"registeredVoters":40628,"undervotes":3556,"overvotes":9,"sourceRow":59,"partiallyEligible":true},{"district":8,"eligible":true,"votes":[89,266],"totalVotes":355,"registeredVoters":440,"undervotes":40,"overvotes":0,"sourceRow":63,"partiallyEligible":true},{"district":9,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[37,166],"totalVotes":203,"registeredVoters":310,"undervotes":34,"overvotes":0,"sourceRow":67,"partiallyEligible":true},{"district":11,"eligible":true,"votes":[4972,17064],"totalVotes":22036,"registeredVoters":29996,"undervotes":3034,"overvotes":11,"sourceRow":71,"partiallyEligible":true}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}}]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"electionDate":"2022-11-08","electionName":"2022-11-08 San Francisco candidate results","districtYear":2022,"certifiedDate":"2022-12-01","downloadedDate":"2026-09-26","source":"https://www.sfelections.org/results/20221108/data/20221201/dsov.xlsx","sourceSha256":"68d450db01488b5f8fd81fac0f70feaaf460dbc6bc36c1904816c813f72d8183","geography":"Votes cast in San Francisco, reported by supervisorial district. Congressional and state legislative contests include only eligible portions of each district.","method":"Candidate vote share divides a candidate count by all valid votes in that contest and area. Write-ins are included when reported. District eligibility uses registered-voter counts in the official workbook compared with the election’s citywide presidential or gubernatorial contest. Missing supervisorial rows indicate no eligible voters, not zero support. County cumulative votes, when present, are recorded separately as unassigned.","contests":[{"id":"governor","title":"GOVERNOR","sourceSheet":"Sheet2","candidates":[{"name":"BRIAN DAHLE","party":"REP","sourceColumn":7},{"name":"GAVIN NEWSOM","party":"DEM","sourceColumn":9}],"citywide":{"votes":[44064,257402],"totalVotes":301466,"registeredVoters":497561,"undervotes":8465,"overvotes":59,"sourceRow":14},"districts":[{"district":1,"eligible":true,"votes":[4993,24642],"totalVotes":29635,"registeredVoters":45398,"undervotes":878,"overvotes":8,"sourceRow":63,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[5225,26171],"totalVotes":31396,"registeredVoters":46544,"undervotes":685,"overvotes":5,"sourceRow":67,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[3686,19866],"totalVotes":23552,"registeredVoters":41094,"undervotes":857,"overvotes":4,"sourceRow":71,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[6653,22551],"totalVotes":29204,"registeredVoters":48073,"undervotes":979,"overvotes":7,"sourceRow":75,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[2299,22839],"totalVotes":25138,"registeredVoters":42963,"undervotes":791,"overvotes":7,"sourceRow":79,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[2472,15815],"totalVotes":18287,"registeredVoters":33835,"undervotes":471,"overvotes":1,"sourceRow":83,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[5858,27579],"totalVotes":33437,"registeredVoters":49306,"undervotes":839,"overvotes":6,"sourceRow":87,"partiallyEligible":false},{"district":8,"eligible":true,"votes":[2739,38771],"totalVotes":41510,"registeredVoters":56528,"undervotes":934,"overvotes":3,"sourceRow":91,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[2647,24553],"totalVotes":27200,"registeredVoters":46401,"undervotes":908,"overvotes":6,"sourceRow":95,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[3002,17283],"totalVotes":20285,"registeredVoters":43017,"undervotes":486,"overvotes":5,"sourceRow":99,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[4490,17332],"totalVotes":21822,"registeredVoters":44402,"undervotes":637,"overvotes":7,"sourceRow":103,"partiallyEligible":false}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"lieutenant-governor","title":"LIEUTENANT GOVERNOR","sourceSheet":"Sheet3","candidates":[{"name":"ANGELA E. UNDERWOOD JACOBS","party":"REP","sourceColumn":7},{"name":"ELENI KOUNALAKIS","party":"DEM","sourceColumn":9}],"citywide":{"votes":[45663,246398],"totalVotes":292061,"registeredVoters":497561,"undervotes":17867,"overvotes":62,"sourceRow":14},"districts":[{"district":1,"eligible":true,"votes":[4981,23686],"totalVotes":28667,"registeredVoters":45398,"undervotes":1845,"overvotes":9,"sourceRow":63,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[5291,25162],"totalVotes":30453,"registeredVoters":46544,"undervotes":1630,"overvotes":3,"sourceRow":67,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[3802,19127],"totalVotes":22929,"registeredVoters":41094,"undervotes":1478,"overvotes":6,"sourceRow":71,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[6756,21270],"totalVotes":28026,"registeredVoters":48073,"undervotes":2161,"overvotes":3,"sourceRow":75,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[2605,21711],"totalVotes":24316,"registeredVoters":42963,"undervotes":1609,"overvotes":11,"sourceRow":79,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[2620,15144],"totalVotes":17764,"registeredVoters":33835,"undervotes":990,"overvotes":5,"sourceRow":83,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[5745,26812],"totalVotes":32557,"registeredVoters":49306,"undervotes":1721,"overvotes":4,"sourceRow":87,"partiallyEligible":false},{"district":8,"eligible":true,"votes":[2723,37757],"totalVotes":40480,"registeredVoters":56528,"undervotes":1961,"overvotes":6,"sourceRow":91,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[2895,23458],"totalVotes":26353,"registeredVoters":46401,"undervotes":1756,"overvotes":5,"sourceRow":95,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[3434,16085],"totalVotes":19519,"registeredVoters":43017,"undervotes":1252,"overvotes":5,"sourceRow":99,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[4811,16186],"totalVotes":20997,"registeredVoters":44402,"undervotes":1464,"overvotes":5,"sourceRow":103,"partiallyEligible":false}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"secretary-of-state","title":"SECRETARY OF STATE","sourceSheet":"Sheet4","candidates":[{"name":"ROB BERNOSKY","party":"REP","sourceColumn":7},{"name":"SHIRLEY N. WEBER","party":"DEM","sourceColumn":9}],"citywide":{"votes":[46696,247726],"totalVotes":294422,"registeredVoters":497561,"undervotes":15524,"overvotes":44,"sourceRow":14},"districts":[{"district":1,"eligible":true,"votes":[5225,23569],"totalVotes":28794,"registeredVoters":45398,"undervotes":1719,"overvotes":8,"sourceRow":63,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[5670,24773],"totalVotes":30443,"registeredVoters":46544,"undervotes":1643,"overvotes":0,"sourceRow":67,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[3944,19031],"totalVotes":22975,"registeredVoters":41094,"undervotes":1433,"overvotes":5,"sourceRow":71,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[7011,20992],"totalVotes":28003,"registeredVoters":48073,"undervotes":2186,"overvotes":1,"sourceRow":75,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[2514,22210],"totalVotes":24724,"registeredVoters":42963,"undervotes":1203,"overvotes":9,"sourceRow":79,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[2604,15231],"totalVotes":17835,"registeredVoters":33835,"undervotes":922,"overvotes":2,"sourceRow":83,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[6012,26718],"totalVotes":32730,"registeredVoters":49306,"undervotes":1551,"overvotes":1,"sourceRow":87,"partiallyEligible":false},{"district":8,"eligible":true,"votes":[2840,38122],"totalVotes":40962,"registeredVoters":56528,"undervotes":1483,"overvotes":2,"sourceRow":91,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[2772,24256],"totalVotes":27028,"registeredVoters":46401,"undervotes":1080,"overvotes":6,"sourceRow":95,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[3263,16437],"totalVotes":19700,"registeredVoters":43017,"undervotes":1072,"overvotes":4,"sourceRow":99,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[4841,16387],"totalVotes":21228,"registeredVoters":44402,"undervotes":1232,"overvotes":6,"sourceRow":103,"partiallyEligible":false}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"controller","title":"CONTROLLER","sourceSheet":"Sheet5","candidates":[{"name":"MALIA M. COHEN","party":"DEM","sourceColumn":7},{"name":"LANHEE J. CHEN","party":"REP","sourceColumn":9}],"citywide":{"votes":[221334,70094],"totalVotes":291428,"registeredVoters":497561,"undervotes":18474,"overvotes":88,"sourceRow":14},"districts":[{"district":1,"eligible":true,"votes":[20939,7631],"totalVotes":28570,"registeredVoters":45398,"undervotes":1942,"overvotes":9,"sourceRow":63,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[21377,8806],"totalVotes":30183,"registeredVoters":46544,"undervotes":1890,"overvotes":13,"sourceRow":67,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[16874,5866],"totalVotes":22740,"registeredVoters":41094,"undervotes":1663,"overvotes":10,"sourceRow":71,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[18545,9580],"totalVotes":28125,"registeredVoters":48073,"undervotes":2060,"overvotes":5,"sourceRow":75,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[20309,3960],"totalVotes":24269,"registeredVoters":42963,"undervotes":1658,"overvotes":9,"sourceRow":79,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[13516,4157],"totalVotes":17673,"registeredVoters":33835,"undervotes":1080,"overvotes":6,"sourceRow":83,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[23655,8864],"totalVotes":32519,"registeredVoters":49306,"undervotes":1756,"overvotes":7,"sourceRow":87,"partiallyEligible":false},{"district":8,"eligible":true,"votes":[34128,6080],"totalVotes":40208,"registeredVoters":56528,"undervotes":2232,"overvotes":7,"sourceRow":91,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[22049,4305],"totalVotes":26354,"registeredVoters":46401,"undervotes":1749,"overvotes":11,"sourceRow":95,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[14833,4791],"totalVotes":19624,"registeredVoters":43017,"undervotes":1148,"overvotes":4,"sourceRow":99,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[15109,6054],"totalVotes":21163,"registeredVoters":44402,"undervotes":1296,"overvotes":7,"sourceRow":103,"partiallyEligible":false}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"treasurer","title":"TREASURER","sourceSheet":"Sheet6","candidates":[{"name":"FIONA MA","party":"DEM","sourceColumn":7},{"name":"JACK M. GUERRERO","party":"REP","sourceColumn":9}],"citywide":{"votes":[243406,46681],"totalVotes":290087,"registeredVoters":497561,"undervotes":19856,"overvotes":47,"sourceRow":14},"districts":[{"district":1,"eligible":true,"votes":[23420,5028],"totalVotes":28448,"registeredVoters":45398,"undervotes":2070,"overvotes":3,"sourceRow":63,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[23699,6227],"totalVotes":29926,"registeredVoters":46544,"undervotes":2156,"overvotes":4,"sourceRow":67,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[18705,3952],"totalVotes":22657,"registeredVoters":41094,"undervotes":1753,"overvotes":3,"sourceRow":71,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[21861,6345],"totalVotes":28206,"registeredVoters":48073,"undervotes":1982,"overvotes":2,"sourceRow":75,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[21362,2671],"totalVotes":24033,"registeredVoters":42963,"undervotes":1895,"overvotes":8,"sourceRow":79,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[14863,2746],"totalVotes":17609,"registeredVoters":33835,"undervotes":1148,"overvotes":2,"sourceRow":83,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[26579,5855],"totalVotes":32434,"registeredVoters":49306,"undervotes":1844,"overvotes":4,"sourceRow":87,"partiallyEligible":false},{"district":8,"eligible":true,"votes":[36439,3381],"totalVotes":39820,"registeredVoters":56528,"undervotes":2623,"overvotes":4,"sourceRow":91,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[23217,2932],"totalVotes":26149,"registeredVoters":46401,"undervotes":1960,"overvotes":5,"sourceRow":95,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[16432,3150],"totalVotes":19582,"registeredVoters":43017,"undervotes":1190,"overvotes":4,"sourceRow":99,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[16829,4394],"totalVotes":21223,"registeredVoters":44402,"undervotes":1235,"overvotes":8,"sourceRow":103,"partiallyEligible":false}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"attorney-general","title":"ATTORNEY GENERAL","sourceSheet":"Sheet7","candidates":[{"name":"ROB BONTA","party":"DEM","sourceColumn":7},{"name":"NATHAN HOCHMAN","party":"REP","sourceColumn":9}],"citywide":{"votes":[246762,48785],"totalVotes":295547,"registeredVoters":497561,"undervotes":14398,"overvotes":45,"sourceRow":14},"districts":[{"district":1,"eligible":true,"votes":[23487,5468],"totalVotes":28955,"registeredVoters":45398,"undervotes":1564,"overvotes":2,"sourceRow":63,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[24382,6151],"totalVotes":30533,"registeredVoters":46544,"undervotes":1547,"overvotes":6,"sourceRow":67,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[18945,4093],"totalVotes":23038,"registeredVoters":41094,"undervotes":1372,"overvotes":3,"sourceRow":71,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[21077,7113],"totalVotes":28190,"registeredVoters":48073,"undervotes":1995,"overvotes":5,"sourceRow":75,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[22105,2674],"totalVotes":24779,"registeredVoters":42963,"undervotes":1151,"overvotes":6,"sourceRow":79,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[15027,2846],"totalVotes":17873,"registeredVoters":33835,"undervotes":885,"overvotes":1,"sourceRow":83,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[26579,6291],"totalVotes":32870,"registeredVoters":49306,"undervotes":1411,"overvotes":1,"sourceRow":87,"partiallyEligible":false},{"district":8,"eligible":true,"votes":[37854,3247],"totalVotes":41101,"registeredVoters":56528,"undervotes":1341,"overvotes":5,"sourceRow":91,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[24295,2813],"totalVotes":27108,"registeredVoters":46401,"undervotes":1000,"overvotes":6,"sourceRow":95,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[16414,3359],"totalVotes":19773,"registeredVoters":43017,"undervotes":1000,"overvotes":3,"sourceRow":99,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[16597,4730],"totalVotes":21327,"registeredVoters":44402,"undervotes":1132,"overvotes":7,"sourceRow":103,"partiallyEligible":false}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"insurance-commissioner","title":"INSURANCE COMMISSIONER","sourceSheet":"Sheet8","candidates":[{"name":"ROBERT HOWELL","party":"REP","sourceColumn":7},{"name":"RICARDO LARA","party":"DEM","sourceColumn":9}],"citywide":{"votes":[45567,237225],"totalVotes":282792,"registeredVoters":497561,"undervotes":27151,"overvotes":47,"sourceRow":14},"districts":[{"district":1,"eligible":true,"votes":[5096,22466],"totalVotes":27562,"registeredVoters":45398,"undervotes":2953,"overvotes":6,"sourceRow":63,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[5548,23549],"totalVotes":29097,"registeredVoters":46544,"undervotes":2988,"overvotes":1,"sourceRow":67,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[3814,18203],"totalVotes":22017,"registeredVoters":41094,"undervotes":2390,"overvotes":6,"sourceRow":71,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[6643,20344],"totalVotes":26987,"registeredVoters":48073,"undervotes":3199,"overvotes":4,"sourceRow":75,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[2545,21096],"totalVotes":23641,"registeredVoters":42963,"undervotes":2289,"overvotes":6,"sourceRow":79,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[2572,14616],"totalVotes":17188,"registeredVoters":33835,"undervotes":1568,"overvotes":3,"sourceRow":83,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[5940,25554],"totalVotes":31494,"registeredVoters":49306,"undervotes":2784,"overvotes":4,"sourceRow":87,"partiallyEligible":false},{"district":8,"eligible":true,"votes":[3019,36192],"totalVotes":39211,"registeredVoters":56528,"undervotes":3231,"overvotes":5,"sourceRow":91,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[2695,23154],"totalVotes":25849,"registeredVoters":46401,"undervotes":2261,"overvotes":4,"sourceRow":95,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[3162,15955],"totalVotes":19117,"registeredVoters":43017,"undervotes":1656,"overvotes":3,"sourceRow":99,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[4533,16096],"totalVotes":20629,"registeredVoters":44402,"undervotes":1832,"overvotes":5,"sourceRow":103,"partiallyEligible":false}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"board-of-equalization","title":"BOARD OF EQUALIZATION","sourceSheet":"Sheet9","candidates":[{"name":"PETER COE VERBICA","party":"REP","sourceColumn":7},{"name":"SALLY J. LIEBER","party":"DEM","sourceColumn":9}],"citywide":{"votes":[49170,229851],"totalVotes":279021,"registeredVoters":497561,"undervotes":30930,"overvotes":39,"sourceRow":14},"districts":[{"district":1,"eligible":true,"votes":[5477,21701],"totalVotes":27178,"registeredVoters":45398,"undervotes":3341,"overvotes":2,"sourceRow":63,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[6210,22077],"totalVotes":28287,"registeredVoters":46544,"undervotes":3797,"overvotes":2,"sourceRow":67,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[4117,17559],"totalVotes":21676,"registeredVoters":41094,"undervotes":2733,"overvotes":4,"sourceRow":71,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[7010,19589],"totalVotes":26599,"registeredVoters":48073,"undervotes":3587,"overvotes":4,"sourceRow":75,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[2655,20831],"totalVotes":23486,"registeredVoters":42963,"undervotes":2444,"overvotes":6,"sourceRow":79,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[2817,14084],"totalVotes":16901,"registeredVoters":33835,"undervotes":1856,"overvotes":2,"sourceRow":83,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[6377,24658],"totalVotes":31035,"registeredVoters":49306,"undervotes":3244,"overvotes":3,"sourceRow":87,"partiallyEligible":false},{"district":8,"eligible":true,"votes":[3444,35214],"totalVotes":38658,"registeredVoters":56528,"undervotes":3788,"overvotes":1,"sourceRow":91,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[2928,22961],"totalVotes":25889,"registeredVoters":46401,"undervotes":2217,"overvotes":8,"sourceRow":95,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[3358,15452],"totalVotes":18810,"registeredVoters":43017,"undervotes":1963,"overvotes":3,"sourceRow":99,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[4777,15725],"totalVotes":20502,"registeredVoters":44402,"undervotes":1960,"overvotes":4,"sourceRow":103,"partiallyEligible":false}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"united-states-senator","title":"UNITED STATES SENATOR","sourceSheet":"Sheet10","candidates":[{"name":"ALEX PADILLA","party":"DEM","sourceColumn":7},{"name":"MARK P. MEUSER","party":"REP","sourceColumn":9}],"citywide":{"votes":[254756,42699],"totalVotes":297455,"registeredVoters":497561,"undervotes":12330,"overvotes":205,"sourceRow":14},"districts":[{"district":1,"eligible":true,"votes":[24323,4820],"totalVotes":29143,"registeredVoters":45398,"undervotes":1363,"overvotes":15,"sourceRow":63,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[25993,5023],"totalVotes":31016,"registeredVoters":46544,"undervotes":1058,"overvotes":12,"sourceRow":67,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[19680,3546],"totalVotes":23226,"registeredVoters":41094,"undervotes":1173,"overvotes":14,"sourceRow":71,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[21689,6622],"totalVotes":28311,"registeredVoters":48073,"undervotes":1864,"overvotes":15,"sourceRow":75,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[22637,2283],"totalVotes":24920,"registeredVoters":42963,"undervotes":986,"overvotes":30,"sourceRow":79,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[15715,2313],"totalVotes":18028,"registeredVoters":33835,"undervotes":716,"overvotes":15,"sourceRow":83,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[27433,5634],"totalVotes":33067,"registeredVoters":49306,"undervotes":1202,"overvotes":13,"sourceRow":87,"partiallyEligible":false},{"district":8,"eligible":true,"votes":[39060,2462],"totalVotes":41522,"registeredVoters":56528,"undervotes":902,"overvotes":23,"sourceRow":91,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[24764,2445],"totalVotes":27209,"registeredVoters":46401,"undervotes":885,"overvotes":20,"sourceRow":95,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[16679,3050],"totalVotes":19729,"registeredVoters":43017,"undervotes":1023,"overvotes":24,"sourceRow":99,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[16783,4501],"totalVotes":21284,"registeredVoters":44402,"undervotes":1158,"overvotes":24,"sourceRow":103,"partiallyEligible":false}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"united-states-senator-partial-term","title":"UNITED STATES SENATOR PARTIAL TERM","sourceSheet":"Sheet11","candidates":[{"name":"ALEX PADILLA","party":"DEM","sourceColumn":7},{"name":"MARK P. MEUSER","party":"REP","sourceColumn":9}],"citywide":{"votes":[253856,42871],"totalVotes":296727,"registeredVoters":497561,"undervotes":13164,"overvotes":99,"sourceRow":14},"districts":[{"district":1,"eligible":true,"votes":[24280,4801],"totalVotes":29081,"registeredVoters":45398,"undervotes":1431,"overvotes":9,"sourceRow":63,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[25937,5005],"totalVotes":30942,"registeredVoters":46544,"undervotes":1139,"overvotes":5,"sourceRow":67,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[19602,3579],"totalVotes":23181,"registeredVoters":41094,"undervotes":1225,"overvotes":7,"sourceRow":71,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[21596,6632],"totalVotes":28228,"registeredVoters":48073,"undervotes":1953,"overvotes":9,"sourceRow":75,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[22539,2298],"totalVotes":24837,"registeredVoters":42963,"undervotes":1085,"overvotes":14,"sourceRow":79,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[15647,2343],"totalVotes":17990,"registeredVoters":33835,"undervotes":760,"overvotes":9,"sourceRow":83,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[27363,5608],"totalVotes":32971,"registeredVoters":49306,"undervotes":1305,"overvotes":6,"sourceRow":87,"partiallyEligible":false},{"district":8,"eligible":true,"votes":[38962,2500],"totalVotes":41462,"registeredVoters":56528,"undervotes":980,"overvotes":5,"sourceRow":91,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[24639,2496],"totalVotes":27135,"registeredVoters":46401,"undervotes":968,"overvotes":11,"sourceRow":95,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[16640,3063],"totalVotes":19703,"registeredVoters":43017,"undervotes":1063,"overvotes":10,"sourceRow":99,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[16651,4546],"totalVotes":21197,"registeredVoters":44402,"undervotes":1255,"overvotes":14,"sourceRow":103,"partiallyEligible":false}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"us-house-of-rep-district-11","title":"US HOUSE OF REP DISTRICT 11","sourceSheet":"Sheet13","candidates":[{"name":"JOHN DENNIS","party":"REP","sourceColumn":7},{"name":"NANCY PELOSI","party":"DEM","sourceColumn":9}],"citywide":{"votes":[42217,220848],"totalVotes":263065,"registeredVoters":436996,"undervotes":17359,"overvotes":45,"sourceRow":14},"districts":[{"district":1,"eligible":true,"votes":[5455,23058],"totalVotes":28513,"registeredVoters":45398,"undervotes":2004,"overvotes":4,"sourceRow":43,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[5662,24791],"totalVotes":30453,"registeredVoters":46544,"undervotes":1629,"overvotes":4,"sourceRow":47,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[4213,18384],"totalVotes":22597,"registeredVoters":41094,"undervotes":1813,"overvotes":3,"sourceRow":51,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[7495,20578],"totalVotes":28073,"registeredVoters":48073,"undervotes":2115,"overvotes":2,"sourceRow":55,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[2763,21360],"totalVotes":24123,"registeredVoters":42963,"undervotes":1807,"overvotes":6,"sourceRow":59,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[2780,14860],"totalVotes":17640,"registeredVoters":33835,"undervotes":1116,"overvotes":3,"sourceRow":63,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[6073,25993],"totalVotes":32066,"registeredVoters":48708,"undervotes":1847,"overvotes":9,"sourceRow":67,"partiallyEligible":true},{"district":8,"eligible":true,"votes":[3018,37244],"totalVotes":40262,"registeredVoters":56528,"undervotes":2180,"overvotes":5,"sourceRow":71,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[2051,20433],"totalVotes":22484,"registeredVoters":38330,"undervotes":1742,"overvotes":7,"sourceRow":75,"partiallyEligible":true},{"district":10,"eligible":true,"votes":[2300,13047],"totalVotes":15347,"registeredVoters":32365,"undervotes":977,"overvotes":2,"sourceRow":79,"partiallyEligible":true},{"district":11,"eligible":true,"votes":[407,1100],"totalVotes":1507,"registeredVoters":3158,"undervotes":129,"overvotes":0,"sourceRow":83,"partiallyEligible":true}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"us-house-of-rep-district-15","title":"US HOUSE OF REP DISTRICT 15","sourceSheet":"Sheet15","candidates":[{"name":"DAVID J. CANEPA","party":"DEM","sourceColumn":7},{"name":"KEVIN MULLIN","party":"DEM","sourceColumn":9}],"citywide":{"votes":[12132,12204],"totalVotes":24336,"registeredVoters":60565,"undervotes":5141,"overvotes":44,"sourceRow":14},"districts":[{"district":1,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":2,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":3,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":4,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":5,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":6,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[132,145],"totalVotes":277,"registeredVoters":598,"undervotes":83,"overvotes":0,"sourceRow":43,"partiallyEligible":true},{"district":8,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[1560,1557],"totalVotes":3117,"registeredVoters":8071,"undervotes":758,"overvotes":6,"sourceRow":47,"partiallyEligible":true},{"district":10,"eligible":true,"votes":[1814,1739],"totalVotes":3553,"registeredVoters":10652,"undervotes":890,"overvotes":7,"sourceRow":51,"partiallyEligible":true},{"district":11,"eligible":true,"votes":[8626,8763],"totalVotes":17389,"registeredVoters":41244,"undervotes":3410,"overvotes":31,"sourceRow":55,"partiallyEligible":true}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"state-assembly-member-district-17","title":"STATE ASSEMBLY MEMBER DISTRICT 17","sourceSheet":"Sheet18","candidates":[{"name":"DAVID CAMPOS","party":"DEM","sourceColumn":7},{"name":"MATT HANEY","party":"DEM","sourceColumn":9}],"citywide":{"votes":[45470,101891],"totalVotes":147361,"registeredVoters":281435,"undervotes":21092,"overvotes":149,"sourceRow":14},"districts":[{"district":1,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[808,2063],"totalVotes":2871,"registeredVoters":4872,"undervotes":460,"overvotes":3,"sourceRow":43,"partiallyEligible":true},{"district":3,"eligible":true,"votes":[5191,12029],"totalVotes":17220,"registeredVoters":35104,"undervotes":3101,"overvotes":18,"sourceRow":47,"partiallyEligible":true},{"district":4,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[4968,11048],"totalVotes":16016,"registeredVoters":32383,"undervotes":2173,"overvotes":21,"sourceRow":51,"partiallyEligible":true},{"district":6,"eligible":true,"votes":[4174,12375],"totalVotes":16549,"registeredVoters":33835,"undervotes":2194,"overvotes":16,"sourceRow":55,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[2923,7817],"totalVotes":10740,"registeredVoters":17334,"undervotes":2028,"overvotes":8,"sourceRow":59,"partiallyEligible":true},{"district":8,"eligible":true,"votes":[8669,24139],"totalVotes":32808,"registeredVoters":48796,"undervotes":3655,"overvotes":19,"sourceRow":63,"partiallyEligible":true},{"district":9,"eligible":true,"votes":[9093,15723],"totalVotes":24816,"registeredVoters":46401,"undervotes":3274,"overvotes":24,"sourceRow":67,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[6200,11852],"totalVotes":18052,"registeredVoters":43017,"undervotes":2697,"overvotes":27,"sourceRow":71,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[3444,4845],"totalVotes":8289,"registeredVoters":19693,"undervotes":1510,"overvotes":13,"sourceRow":75,"partiallyEligible":true}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"state-assembly-member-district-19","title":"STATE ASSEMBLY MEMBER DISTRICT 19","sourceSheet":"Sheet20","candidates":[{"name":"PHIL TING","party":"DEM","sourceColumn":7},{"name":"KARSTEN WEIDE","party":"REP","sourceColumn":9}],"citywide":{"votes":[106319,23378],"totalVotes":129697,"registeredVoters":216126,"undervotes":11675,"overvotes":16,"sourceRow":14},"districts":[{"district":1,"eligible":true,"votes":[23276,4786],"totalVotes":28062,"registeredVoters":45398,"undervotes":2455,"overvotes":4,"sourceRow":43,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[21061,5146],"totalVotes":26207,"registeredVoters":41672,"undervotes":2545,"overvotes":0,"sourceRow":47,"partiallyEligible":true},{"district":3,"eligible":true,"votes":[3064,593],"totalVotes":3657,"registeredVoters":5990,"undervotes":417,"overvotes":0,"sourceRow":51,"partiallyEligible":true},{"district":4,"eligible":true,"votes":[21424,6262],"totalVotes":27686,"registeredVoters":48073,"undervotes":2502,"overvotes":2,"sourceRow":55,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[6490,502],"totalVotes":6992,"registeredVoters":10580,"undervotes":732,"overvotes":2,"sourceRow":59,"partiallyEligible":true},{"district":6,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[16737,3268],"totalVotes":20005,"registeredVoters":31972,"undervotes":1499,"overvotes":2,"sourceRow":63,"partiallyEligible":true},{"district":8,"eligible":true,"votes":[5118,420],"totalVotes":5538,"registeredVoters":7732,"undervotes":426,"overvotes":1,"sourceRow":67,"partiallyEligible":true},{"district":9,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":10,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[9149,2401],"totalVotes":11550,"registeredVoters":24709,"undervotes":1099,"overvotes":5,"sourceRow":71,"partiallyEligible":true}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}}]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"electionDate":"2024-11-05","electionName":"2024-11-05 San Francisco candidate results","districtYear":2022,"certifiedDate":"2024-12-03","downloadedDate":"2026-09-26","source":"https://www.sfelections.org/results/20241105/data/20241203/dsov.xlsx","sourceSha256":"9bf9c7d767273e73b3cdf5b98086412cbe354b0928ee6abb0e379deb0353c403","geography":"Votes cast in San Francisco, reported by supervisorial district. Congressional and state legislative contests include only eligible portions of each district.","method":"Candidate vote share divides a candidate count by all valid votes in that contest and area. Write-ins are included when reported. District eligibility uses registered-voter counts in the official workbook compared with the election’s citywide presidential or gubernatorial contest. Missing supervisorial rows indicate no eligible voters, not zero support. County cumulative votes, when present, are recorded separately as unassigned.","contests":[{"id":"president-and-vice-president","title":"PRESIDENT AND VICE PRESIDENT","sourceSheet":"Sheet2","candidates":[{"name":"DONALD J. TRUMP / JD VANCE","party":"REP","sourceColumn":7},{"name":"CLAUDIA DE LA CRUZ / KARINA GARCIA","party":"PF","sourceColumn":9},{"name":"KAMALA D. HARRIS / TIM WALZ","party":"DEM","sourceColumn":11},{"name":"ROBERT F. KENNEDY JR. / NICOLE SHANAHAN","party":"AI","sourceColumn":14},{"name":"CHASE OLIVER / MIKE TER MAAT","party":"LIB","sourceColumn":16},{"name":"JILL STEIN / RUDOLPH WARE","party":"GRN","sourceColumn":19},{"name":"Write-in","party":null,"sourceColumn":21}],"citywide":{"votes":[62594,3645,323719,4239,1871,6896,33],"totalVotes":402997,"registeredVoters":522265,"undervotes":8463,"overvotes":661,"sourceRow":14},"districts":[{"district":1,"eligible":true,"votes":[6227,340,30768,409,179,644,7],"totalVotes":38574,"registeredVoters":47357,"undervotes":909,"overvotes":28,"sourceRow":63,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[5678,175,34602,433,286,502,2],"totalVotes":41678,"registeredVoters":49605,"undervotes":1053,"overvotes":24,"sourceRow":67,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[5425,243,26219,357,219,557,5],"totalVotes":33025,"registeredVoters":43795,"undervotes":751,"overvotes":55,"sourceRow":71,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[9057,315,27144,606,165,597,5],"totalVotes":37889,"registeredVoters":49650,"undervotes":1092,"overvotes":45,"sourceRow":75,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[3757,387,28551,318,132,692,3],"totalVotes":33840,"registeredVoters":45398,"undervotes":604,"overvotes":89,"sourceRow":79,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[4108,251,21674,288,150,535,2],"totalVotes":27008,"registeredVoters":37101,"undervotes":516,"overvotes":57,"sourceRow":83,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[6683,313,33758,418,190,705,1],"totalVotes":42068,"registeredVoters":50973,"undervotes":944,"overvotes":36,"sourceRow":87,"partiallyEligible":false},{"district":8,"eligible":true,"votes":[2899,418,46960,259,186,895,2],"totalVotes":51619,"registeredVoters":59445,"undervotes":698,"overvotes":25,"sourceRow":91,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[4545,578,30059,343,114,861,2],"totalVotes":36502,"registeredVoters":48350,"undervotes":618,"overvotes":93,"sourceRow":95,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[5740,248,22193,362,136,438,2],"totalVotes":29119,"registeredVoters":44643,"undervotes":585,"overvotes":86,"sourceRow":99,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[8475,377,21791,446,114,470,2],"totalVotes":31675,"registeredVoters":45948,"undervotes":693,"overvotes":123,"sourceRow":103,"partiallyEligible":false}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0,0,0,0,0,0]}},{"id":"united-states-senator","title":"UNITED STATES SENATOR","sourceSheet":"Sheet3","candidates":[{"name":"STEVE GARVEY","party":"REP","sourceColumn":7},{"name":"ADAM B. SCHIFF","party":"DEM","sourceColumn":9}],"citywide":{"votes":[66421,310932],"totalVotes":377353,"registeredVoters":522265,"undervotes":34597,"overvotes":171,"sourceRow":14},"districts":[{"district":1,"eligible":true,"votes":[6699,29637],"totalVotes":36336,"registeredVoters":47357,"undervotes":3164,"overvotes":11,"sourceRow":63,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[7537,32617],"totalVotes":40154,"registeredVoters":49605,"undervotes":2585,"overvotes":16,"sourceRow":67,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[5710,24907],"totalVotes":30617,"registeredVoters":43795,"undervotes":3198,"overvotes":16,"sourceRow":71,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[9197,26123],"totalVotes":35320,"registeredVoters":49650,"undervotes":3695,"overvotes":11,"sourceRow":75,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[3981,27296],"totalVotes":31277,"registeredVoters":45398,"undervotes":3234,"overvotes":22,"sourceRow":79,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[4477,20749],"totalVotes":25226,"registeredVoters":37101,"undervotes":2345,"overvotes":10,"sourceRow":83,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[7428,32568],"totalVotes":39996,"registeredVoters":50973,"undervotes":3041,"overvotes":11,"sourceRow":87,"partiallyEligible":false},{"district":8,"eligible":true,"votes":[3787,45525],"totalVotes":49312,"registeredVoters":59445,"undervotes":3023,"overvotes":7,"sourceRow":91,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[4507,29105],"totalVotes":33612,"registeredVoters":48350,"undervotes":3573,"overvotes":28,"sourceRow":95,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[5501,21136],"totalVotes":26637,"registeredVoters":44643,"undervotes":3142,"overvotes":11,"sourceRow":99,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[7597,21269],"totalVotes":28866,"registeredVoters":45948,"undervotes":3597,"overvotes":28,"sourceRow":103,"partiallyEligible":false}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"united-states-senator-partial-term","title":"UNITED STATES SENATOR PARTIAL TERM","sourceSheet":"Sheet4","candidates":[{"name":"STEVE GARVEY","party":"REP","sourceColumn":7},{"name":"ADAM B. SCHIFF","party":"DEM","sourceColumn":9}],"citywide":{"votes":[65547,307511],"totalVotes":373058,"registeredVoters":522265,"undervotes":38960,"overvotes":103,"sourceRow":14},"districts":[{"district":1,"eligible":true,"votes":[6596,29290],"totalVotes":35886,"registeredVoters":47357,"undervotes":3619,"overvotes":6,"sourceRow":63,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[7534,32286],"totalVotes":39820,"registeredVoters":49605,"undervotes":2927,"overvotes":8,"sourceRow":67,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[5698,24606],"totalVotes":30304,"registeredVoters":43795,"undervotes":3521,"overvotes":6,"sourceRow":71,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[8940,25899],"totalVotes":34839,"registeredVoters":49650,"undervotes":4182,"overvotes":5,"sourceRow":75,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[3918,27002],"totalVotes":30920,"registeredVoters":45398,"undervotes":3602,"overvotes":11,"sourceRow":79,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[4472,20527],"totalVotes":24999,"registeredVoters":37101,"undervotes":2574,"overvotes":8,"sourceRow":83,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[7349,32178],"totalVotes":39527,"registeredVoters":50973,"undervotes":3510,"overvotes":11,"sourceRow":87,"partiallyEligible":false},{"district":8,"eligible":true,"votes":[3788,45160],"totalVotes":48948,"registeredVoters":59445,"undervotes":3393,"overvotes":1,"sourceRow":91,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[4468,28742],"totalVotes":33210,"registeredVoters":48350,"undervotes":3982,"overvotes":21,"sourceRow":95,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[5366,20823],"totalVotes":26189,"registeredVoters":44643,"undervotes":3591,"overvotes":10,"sourceRow":99,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[7418,20998],"totalVotes":28416,"registeredVoters":45948,"undervotes":4059,"overvotes":16,"sourceRow":103,"partiallyEligible":false}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"united-states-representative-district-11","title":"UNITED STATES REPRESENTATIVE, DISTRICT 11","sourceSheet":"Sheet6","candidates":[{"name":"BRUCE LOU","party":"REP","sourceColumn":7},{"name":"NANCY PELOSI","party":"DEM","sourceColumn":9}],"citywide":{"votes":[64315,274796],"totalVotes":339111,"registeredVoters":459732,"undervotes":30043,"overvotes":77,"sourceRow":14},"districts":[{"district":1,"eligible":true,"votes":[7686,28550],"totalVotes":36236,"registeredVoters":47357,"undervotes":3269,"overvotes":6,"sourceRow":43,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[8224,31786],"totalVotes":40010,"registeredVoters":49605,"undervotes":2741,"overvotes":4,"sourceRow":47,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[6790,23830],"totalVotes":30620,"registeredVoters":43795,"undervotes":3196,"overvotes":15,"sourceRow":51,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[10517,24960],"totalVotes":35477,"registeredVoters":49650,"undervotes":3540,"overvotes":9,"sourceRow":55,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[4599,26731],"totalVotes":31330,"registeredVoters":45398,"undervotes":3197,"overvotes":6,"sourceRow":59,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[5354,19907],"totalVotes":25261,"registeredVoters":37101,"undervotes":2313,"overvotes":7,"sourceRow":63,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[8266,31135],"totalVotes":39401,"registeredVoters":50325,"undervotes":3133,"overvotes":9,"sourceRow":67,"partiallyEligible":true},{"district":8,"eligible":true,"votes":[4589,44442],"totalVotes":49031,"registeredVoters":59445,"undervotes":3307,"overvotes":4,"sourceRow":71,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[3556,25008],"totalVotes":28564,"registeredVoters":40090,"undervotes":3091,"overvotes":12,"sourceRow":75,"partiallyEligible":true},{"district":10,"eligible":true,"votes":[4098,17000],"totalVotes":21098,"registeredVoters":33727,"undervotes":2011,"overvotes":5,"sourceRow":79,"partiallyEligible":true},{"district":11,"eligible":true,"votes":[636,1447],"totalVotes":2083,"registeredVoters":3239,"undervotes":245,"overvotes":0,"sourceRow":83,"partiallyEligible":true}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"united-states-representative-district-15","title":"UNITED STATES REPRESENTATIVE, DISTRICT 15","sourceSheet":"Sheet8","candidates":[{"name":"KEVIN MULLIN","party":"DEM","sourceColumn":7},{"name":"ANNA CHENG KRAMER","party":"REP","sourceColumn":9}],"citywide":{"votes":[25287,10863],"totalVotes":36150,"registeredVoters":62533,"undervotes":6726,"overvotes":14,"sourceRow":14},"districts":[{"district":1,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":2,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":3,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":4,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":5,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":6,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[309,115],"totalVotes":424,"registeredVoters":648,"undervotes":81,"overvotes":0,"sourceRow":43,"partiallyEligible":true},{"district":8,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[3129,1517],"totalVotes":4646,"registeredVoters":8260,"undervotes":898,"overvotes":2,"sourceRow":47,"partiallyEligible":true},{"district":10,"eligible":true,"votes":[3631,1869],"totalVotes":5500,"registeredVoters":10916,"undervotes":1172,"overvotes":4,"sourceRow":51,"partiallyEligible":true},{"district":11,"eligible":true,"votes":[18218,7362],"totalVotes":25580,"registeredVoters":42709,"undervotes":4575,"overvotes":8,"sourceRow":55,"partiallyEligible":true}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"state-senator-district-11","title":"STATE SENATOR, DISTRICT 11","sourceSheet":"Sheet10","candidates":[{"name":"SCOTT WIENER","party":"DEM","sourceColumn":7},{"name":"YVETTE CORKREAN","party":"REP","sourceColumn":9}],"citywide":{"votes":[291123,77944],"totalVotes":369067,"registeredVoters":522265,"undervotes":42947,"overvotes":107,"sourceRow":14},"districts":[{"district":1,"eligible":true,"votes":[26975,8237],"totalVotes":35212,"registeredVoters":47357,"undervotes":4288,"overvotes":11,"sourceRow":47,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[30322,8794],"totalVotes":39116,"registeredVoters":49605,"undervotes":3632,"overvotes":7,"sourceRow":51,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[23510,6431],"totalVotes":29941,"registeredVoters":43795,"undervotes":3880,"overvotes":10,"sourceRow":55,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[23280,11114],"totalVotes":34394,"registeredVoters":49650,"undervotes":4624,"overvotes":8,"sourceRow":59,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[26322,4430],"totalVotes":30752,"registeredVoters":45398,"undervotes":3769,"overvotes":12,"sourceRow":63,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[19763,5132],"totalVotes":24895,"registeredVoters":37101,"undervotes":2676,"overvotes":10,"sourceRow":67,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[29707,9229],"totalVotes":38936,"registeredVoters":50973,"undervotes":4105,"overvotes":7,"sourceRow":71,"partiallyEligible":false},{"district":8,"eligible":true,"votes":[43375,4895],"totalVotes":48270,"registeredVoters":59445,"undervotes":4068,"overvotes":4,"sourceRow":75,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[27497,5228],"totalVotes":32725,"registeredVoters":48350,"undervotes":4470,"overvotes":18,"sourceRow":79,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[20286,6032],"totalVotes":26318,"registeredVoters":44643,"undervotes":3464,"overvotes":8,"sourceRow":83,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[20086,8422],"totalVotes":28508,"registeredVoters":45948,"undervotes":3971,"overvotes":12,"sourceRow":87,"partiallyEligible":false}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"state-assembly-member-district-17","title":"STATE ASSEMBLY MEMBER, DISTRICT 17","sourceSheet":"Sheet12","candidates":[{"name":"MATT HANEY","party":"DEM","sourceColumn":7},{"name":"MANUEL NORIS-BARRERA","party":"REP","sourceColumn":9}],"citywide":{"votes":[169490,30900],"totalVotes":200390,"registeredVoters":296147,"undervotes":26383,"overvotes":50,"sourceRow":14},"districts":[{"district":1,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[3421,539],"totalVotes":3960,"registeredVoters":5262,"undervotes":475,"overvotes":0,"sourceRow":43,"partiallyEligible":true},{"district":3,"eligible":true,"votes":[19993,4590],"totalVotes":24583,"registeredVoters":37365,"undervotes":3705,"overvotes":9,"sourceRow":47,"partiallyEligible":true},{"district":4,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[18758,2876],"totalVotes":21634,"registeredVoters":34158,"undervotes":3273,"overvotes":6,"sourceRow":51,"partiallyEligible":true},{"district":6,"eligible":true,"votes":[20322,4237],"totalVotes":24559,"registeredVoters":37101,"undervotes":3015,"overvotes":7,"sourceRow":55,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[10838,2866],"totalVotes":13704,"registeredVoters":17691,"undervotes":1458,"overvotes":3,"sourceRow":59,"partiallyEligible":true},{"district":8,"eligible":true,"votes":[37813,3377],"totalVotes":41190,"registeredVoters":51343,"undervotes":3951,"overvotes":0,"sourceRow":63,"partiallyEligible":true},{"district":9,"eligible":true,"votes":[28287,4353],"totalVotes":32640,"registeredVoters":48350,"undervotes":4564,"overvotes":9,"sourceRow":67,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[20922,4974],"totalVotes":25896,"registeredVoters":44643,"undervotes":3885,"overvotes":9,"sourceRow":71,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[9136,3088],"totalVotes":12224,"registeredVoters":20234,"undervotes":2057,"overvotes":7,"sourceRow":75,"partiallyEligible":true}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"state-assembly-member-district-19","title":"STATE ASSEMBLY MEMBER, DISTRICT 19","sourceSheet":"Sheet14","candidates":[{"name":"CATHERINE STEFANI","party":"DEM","sourceColumn":7},{"name":"DAVID E. LEE","party":"DEM","sourceColumn":9}],"citywide":{"votes":[95423,56913],"totalVotes":152336,"registeredVoters":226118,"undervotes":32860,"overvotes":102,"sourceRow":14},"districts":[{"district":1,"eligible":true,"votes":[19063,13470],"totalVotes":32533,"registeredVoters":47357,"undervotes":6952,"overvotes":26,"sourceRow":43,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[24022,8205],"totalVotes":32227,"registeredVoters":44343,"undervotes":6082,"overvotes":11,"sourceRow":47,"partiallyEligible":true},{"district":3,"eligible":true,"votes":[3418,1159],"totalVotes":4577,"registeredVoters":6430,"undervotes":956,"overvotes":1,"sourceRow":51,"partiallyEligible":true},{"district":4,"eligible":true,"votes":[17183,14310],"totalVotes":31493,"registeredVoters":49650,"undervotes":7513,"overvotes":20,"sourceRow":55,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[5188,2722],"totalVotes":7910,"registeredVoters":11240,"undervotes":1708,"overvotes":2,"sourceRow":59,"partiallyEligible":true},{"district":6,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[14410,8553],"totalVotes":22963,"registeredVoters":33282,"undervotes":4910,"overvotes":10,"sourceRow":63,"partiallyEligible":true},{"district":8,"eligible":true,"votes":[4289,1798],"totalVotes":6087,"registeredVoters":8102,"undervotes":1111,"overvotes":3,"sourceRow":67,"partiallyEligible":true},{"district":9,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":10,"eligible":false,"votes":null,"totalVotes":null,"undervotes":null,"overvotes":null,"registeredVoters":null,"sourceRow":null,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[7850,6696],"totalVotes":14546,"registeredVoters":25714,"undervotes":3628,"overvotes":29,"sourceRow":71,"partiallyEligible":true}],"unassigned":{"totalVotes":0,"undervotes":0,"overvotes":0,"votes":[0,0]}},{"id":"treasurer","title":"TREASURER","sourceSheet":"Sheet29","candidates":[{"name":"JOSÉ CISNEROS","party":null,"sourceColumn":7},{"name":"Write-in","party":null,"sourceColumn":9}],"citywide":{"votes":[300411,0],"totalVotes":300411,"registeredVoters":522265,"undervotes":109691,"overvotes":3,"sourceRow":14},"districts":[{"district":1,"eligible":true,"votes":[28586,0],"totalVotes":28586,"registeredVoters":47357,"undervotes":10671,"overvotes":0,"sourceRow":63,"partiallyEligible":false},{"district":2,"eligible":true,"votes":[30727,0],"totalVotes":30727,"registeredVoters":49605,"undervotes":11820,"overvotes":0,"sourceRow":67,"partiallyEligible":false},{"district":3,"eligible":true,"votes":[23534,0],"totalVotes":23534,"registeredVoters":43795,"undervotes":10138,"overvotes":0,"sourceRow":71,"partiallyEligible":false},{"district":4,"eligible":true,"votes":[26969,0],"totalVotes":26969,"registeredVoters":49650,"undervotes":11915,"overvotes":0,"sourceRow":75,"partiallyEligible":false},{"district":5,"eligible":true,"votes":[25436,0],"totalVotes":25436,"registeredVoters":45398,"undervotes":8968,"overvotes":0,"sourceRow":79,"partiallyEligible":false},{"district":6,"eligible":true,"votes":[19594,0],"totalVotes":19594,"registeredVoters":37101,"undervotes":7817,"overvotes":1,"sourceRow":83,"partiallyEligible":false},{"district":7,"eligible":true,"votes":[31623,0],"totalVotes":31623,"registeredVoters":50973,"undervotes":11221,"overvotes":1,"sourceRow":87,"partiallyEligible":false},{"district":8,"eligible":true,"votes":[40484,0],"totalVotes":40484,"registeredVoters":59445,"undervotes":11588,"overvotes":0,"sourceRow":91,"partiallyEligible":false},{"district":9,"eligible":true,"votes":[28106,0],"totalVotes":28106,"registeredVoters":48350,"undervotes":8984,"overvotes":0,"sourceRow":95,"partiallyEligible":false},{"district":10,"eligible":true,"votes":[21731,0],"totalVotes":21731,"registeredVoters":44643,"undervotes":7913,"overvotes":1,"sourceRow":99,"partiallyEligible":false},{"district":11,"eligible":true,"votes":[23620,0],"totalVotes":23620,"registeredVoters":45948,"undervotes":8654,"overvotes":0,"sourceRow":103,"partiallyEligible":false}],"unassigned":{"totalVotes":1,"undervotes":2,"overvotes":0,"votes":[1,0]}}]}
|