#01

지도로 보는 2026 지방선거

16개 시·도지사 선거 결과를 지도 한 장으로 따라가 봅니다. 그리고 선거 페이지를 만들며 이 데이터를 어떻게 모았는지.

정당색으로 칠한 대한민국 16개 시·도 지도

2026년 6월 3일, 제9회 전국동시지방선거가 치러졌습니다. 이번 선거는 광주와 전남이 전남광주통합특별시로 합쳐진 뒤 처음 치르는 선거였고, 그래서 시·도지사는 17명이 아닌 16명을 뽑았습니다.

CBS 노컷뉴스 선거 페이지 vote.nocut.news를 만들며 매일 아침 선관위 데이터를 받아 지도를 칠했습니다. 선거가 끝난 지금, 그 지도를 천천히 다시 넘겨 봅니다. 아래로 스크롤하면 오른쪽(모바일에서는 위쪽) 지도가 글을 따라 바뀝니다.

시·도지사 당선 정당
색은 당선인의 소속 정당. 16개 시·도 (광주·전남은 통합특별시).
강원특별자치도경기도경상남도경상북도대구광역시대전광역시부산광역시서울특별시세종특별자치시울산광역시인천광역시전북특별자치도제주특별자치도충청남도충청북도전남광주통합특별시강원경기경남경북대구대전부산서울세종울산인천전북제주충남충북전남광주
국민의힘더불어민주당
전국

먼저 전체 그림입니다. 색은 당선인의 소속 정당입니다. 16개 시·도 가운데 더불어민주당 12곳, 국민의힘 4곳. 파란색이 지도 대부분을 덮었고, 붉은색은 서울과 대구·경북·경남에 남았습니다.

격차

같은 지도를 1·2위 격차로 다시 칠하면 이야기가 달라집니다. 색이 옅을수록 박빙입니다. 서울과 영남 해안, 강원이 하얗게 바래고, 전남광주와 경북만 짙게 남습니다. 승패보다 얼마나 가까웠는지가 다음 선거의 지도를 그립니다.

서울

가장 옅은 곳, 서울입니다. 오세훈 후보가 정원오 후보를 1.02%p, 약 5만 3천 표 차로 이겼습니다. 개표 내내 순위가 엎치락뒤치락했고, 16곳 가운데 가장 늦게 당선이 확정된 곳도 서울이었습니다.

수도권

수도권은 색이 갈렸습니다. 서울은 국민의힘이 지켰지만, 경기는 추미애 후보가 15.7%p, 인천은 박찬대 후보가 6.8%p 차로 민주당이 가져갔습니다.

영남

영남은 둘로 갈렸습니다. 해안의 **부산(2.6%p)·울산(3.0%p)·경남(2.6%p)**은 모두 3%p 안팎의 박빙이었고, 부산과 울산은 민주당, 경남은 국민의힘으로 색이 갈렸습니다. 내륙의 **대구(8.9%p)·경북(34.5%p)**은 국민의힘이 분명하게 지켰습니다.

호남

이번 선거의 가장 큰 제도 변화는 전남광주통합특별시입니다. 광주와 전남 유권자 275만 명이 한 사람의 시장을 뽑았고, 민형배 후보가 **79.0%**로 당선됐습니다. 이웃 전북에서는 이원택 후보가 무소속으로 나선 김관영 후보를 9.4%p 차로 이겼습니다. 지도 데이터는 아직 광주와 전남을 따로 담고 있어서, 화면에서 두 경계를 합치는 처리를 따로 해야 했습니다.

충청

충청 네 곳은 모두 민주당이었습니다. 세종이 25.0%p로 가장 컸고, 대전 9.3%p, 충북 9.2%p, 충남 5.1%p. 네 곳 모두 2위는 현직 국민의힘 단체장이었습니다.

투표율

마지막으로 투표율입니다. 어두울수록 많이 투표한 지역. 경남(64.6%), 강원(64.5%), 대구(64.2%), 울산(64.1%), 서울(63.6%)이 높았고, 제주(56.4%)와 인천(58.2%)이 낮았습니다. 박빙이었던 지역과 투표율이 높은 지역이 상당히 겹칩니다.

격차를 한 줄로 세우면

지도는 넓이가 눈을 속입니다. 경북이 커 보이고 서울은 작아 보이죠. 같은 숫자를 막대로 세우면 박빙의 순서가 또렷해집니다.

1·2위 득표율 격차 (%p)
서울1.02%p전남광주67.33%p부산2.62%p대구8.87%p인천6.78%p대전9.33%p울산2.99%p세종25.02%p경기15.67%p강원3.63%p충북9.15%p충남5.07%p전북9.44%p경북34.49%p경남2.57%p제주29.55%p
정렬: 1·2위 득표율 격차 (%p) 내림차순 · 자료: 중앙선거관리위원회
16개 시·도

천천히 내려가 보세요. 스크롤하는 만큼 막대가 자랍니다. 아래로 갈수록 격차가 작은, 그러니까 더 치열했던 곳입니다.

박빙 5곳

격차 4%p 이내로 끝난 곳이 다섯입니다. 서울 1.02, 경남 2.57, 부산 2.62, 울산 2.99, 강원 3.63%p. 다섯 곳의 유권자를 합치면 약 1,620만 명, 전체의 36%입니다.

압승 3곳

반대편 끝에는 전남광주 67.3%p, 경북 34.5%p, 제주 29.6%p. 한 정당이 오래 강했던 두 곳과, 섬이라는 독립된 정치 공간이 나란히 섭니다.

투표율 순

같은 막대를 투표율로 다시 세우면, 박빙 5곳 중 4곳(경남·강원·울산·서울)이 상위 5위 안에 들어옵니다. 가까운 선거가 사람을 투표장으로 부른다는 오래된 가설이 이번에도 보입니다.

이 지도는 어떻게 만들었나

데이터. 개표 결과는 중앙선관위 개표 현황을 선거 당일 밤부터 15초 간격으로 받아 저장한 것 가운데, 16곳 당선이 모두 확정된 6월 4일 오후 기준 값입니다. 선거 페이지에서는 이 데이터로 시·군·구까지 색을 칠했지만, 이 글에는 시·도 16행만 담았습니다. 여론조사는 쓰지 않았습니다. 선거 기간 중 매일 파싱했던 NESDC 등록 조사는 PDF 서식이 조사마다 달라 자동 추출 오류가 있었고, 사후 검증 없이 재사용하기엔 부적절하다고 판단했습니다.

경계. 시·도 경계 GeoJSON(150KB)을 TopoJSON으로 바꾸고 단순화해 42KB로 줄였습니다. 광주와 전남은 지도 데이터에선 따로 있어서 렌더 시점에 topojson.merge로 합쳤습니다. 경계는 시각화용으로 단순화돼 있어 법적 행정구역 경계와 다릅니다.

색. 정당색은 보도국에서 쓰는 값을 그대로 썼습니다(더불어민주당 #004EA1, 국민의힘 #E61E2B). 격차 모드는 정당색을 흰색과 섞어 격차 0%p에서 72%, 40%p 이상에서 0%를 섞습니다. 투표율은 정당과 무관하므로 무채색입니다.

다음. 이 글은 스토리 템플릿이기도 합니다. 새 스토리는 MDX 파일 하나와 데이터 JSON 하나를 추가하면 같은 구조로 발행됩니다.