한국 지도, 내가 만들 수 있을 지도...?
안녕하세요, 트레슬 데림이입니다 ☁️
여러 Tableau 프로젝트를 수행하며, 다수의 고객분들, 데이터 신입, 데이터 이외 직종인 분들께서 유난히도 태블로 Map 차트에 관한 궁금증이 많으셨어요 😀
따라서 이번 포스팅에서는 Tableau의 Map 차트 기초부터, 한국 지도 표현 방법에 관해 차근차근 알아보도록 하겠습니다 💪🏻
하위 실습 내용은 텍스트로 최대한 설명하였으나, 헷갈리는 부분이 있을 것 같아 추후 Youtube 업로드 예정 중입니다.
Tableau Map 차트 기초
Tableau의 Map 차트 - Symbol Map vs Filled Map
Tableau의 Map 차트는 Symbol Map과 Filled Map이 있습니다.
두 차트 모두 지도 형태로 표현 가능하고, Tableau에서 제공하는 여러 지도 레이아웃을 사용할 수 있습니다.
차이점으로는 Filled Map은 색상으로만 값의 크고 작음을 표현할 수 있는 반면, Symbol Map은 주로 원, 사각형 등 기호의 크기와 색상을 모두 사용하여 값을 비교할 수 있습니다.
따라서 측정값이 두개 이상인 경우에는 Symbol Map을 사용하고, 단순히 지도의 형태가 중요한 경우에는 Filled Map을 사용하게 됩니다.
Tableau 한국 지도
Tableau는 기본적으로 대한민국 광역 지자체와 기초 지자체 정보를 갖고있습니다.
이는 Tableau의 Geographic Role 기능을 통해 해당 필드가 의미하는게 나라인지, 시군구인지 등을 지정하기만 하면 바로 한국 지도를 띄우고, 원하는 데이터를 표시할 수 있습니다.
이때 저와 같이 기본 언어를 영어로 설정해둔 경우에는 state, city, county 등 영문 지역 단위로 표시가 됩니다. 그에 대해서는 하단과 같이 Geographic Role을 설정해주시면 됩니다. 🫠
Geographic Role 지역 단위 예시
Geographic Role | 지역 단위 | 예시 |
State/Province | 시/도 | 서울특별시, 경기도, 충청북도, 경상북도, 강원도, … |
County | 시/군/구 | 노원구, 아산시, 양평군, 영등포구, 북구, 울주군, 고령군, … |
Tableau 공간 파일
공간 파일을 왜 사용하죠? 그건 뭔데요?
Tableau에서 시군구를 지정하면 바로 한국 지도가 나타난다고 하였습니다. 그러나 한국은 읍, 면, 동 이라는 개념이 있는데 이는 어떻게 처리할까요? 이렇게 세분화된 지도 또는 커스텀된 지도를 사용하려면 공간 파일이라는 것을 활용합니다.
공간 파일은 말 그대로 공간, 즉 지역을 나타내는 파일입니다.
Tableau에 공간 파일을 삽입하고, 분석을 원하는 데이터와 Join 시키게 되면 원하는 지도를 사용할 수 있게 됩니다.
여기서 주의할 점은 Join이기 때문에 우리 데이터의 지역 이름과 공간 데이터에 나타난 이름, 즉 Join하고자 하는 Key 값이 완벽히 동일해야 해당 지역이 정확히 나타납니다 💡
공간 파일 형식
가장 많이 사용하는 공간 파일의 형태로는 ShapeFile과 GeoJSON이 있습니다.
- ShapeFile
- .shp라는 확장자를 갖고, 벡터 방식으로 공간 정보를 담는 파일입니다.
- 이는 공간 정보를 담는 shp 파일과 sph의 인덱스 정보를 담는 shx 파일, 그리고 속성 정보를 담는 dbf 파일으로 구성되어 있습니다.
- geojson
- geo + json이라는 말 그대로 공간 정보를 담은 json 파일입니다.
- 텍스트로 단순하게 구성되어있기 때문에 shp에 비해 파일 사이즈도 작고, 처리속도도 빠른 편이며, 조작하기도 쉬워 더 선호되는 형식입니다 !
✍🏻 실습
1. 공간 데이터 불러오기
☁️ 지역이 모두 매핑되지 않았다고 표시될 경우에는 Edit Location을 클릭하여 Country/Region이 South Korea로 되어있는지 확인해주세요 !
1. 대한민국 행정동 파일에서 가장 최신 geojson 파일을 다운로드 합니다. 저의 경우에는 아래 링크에서 ver20230701 폴더의 파일을 다운로드 받고, 텍스트 에디터에서 ‘강원특별자치도’를 ‘강원도’로 수정해주었습니다.
2. Tableau 공간 파일에 업로드 합니다.
3. Worksheet를 추가하여 Map 차트가 제대로 보이는지 테스트해봅니다.
2. 분석하고자 하는 데이터 매핑하기
☁️ 한글이 깨져서 보일 경우에는 UTF-8로 다시 인코딩 해주시면 됩니다 !
1. 샘플 데이터셋 파일을 다운로드합니다.
원본 : KRX 정보데이터시스템 - [12020] 상장회사 상세검색 데이터
2. Tableau에 샘플 데이터셋을 추가합니다.
3. 공간 파일명을 더블 클릭 후, 샘플 데이터셋과 Outer Join 시킵니다. 이때 기준이 되는 키는 Sidonm = Billing State, Sggnm = County 입니다.
relationship이 아닌 Join 으로 수행해야 누락되는 지역 없이 모두 잘 나타나게 됩니다.
☢️ Join 모드는 상황에 따라 적합한 것으로 지정하면 되고, 일부 모드는 공간 데이터의 모든 데이터가 들어가지 않아 지역 이름이 누락될 수 있습니다.
3. Map 차트 생성하기
💡 3번 과정에서 언어 설정이 영어로 되어있는 경우에는 기본 위치가 미국으로 되어있어 모든 지역이 unkwoun으로 뜰 수 있습니다. 이 때는 Edit Location > Country/Region > Fixed > South Korea 로 설정해주시면 모든 지역이 나타납니다 !
1. 기초 설정
1. Worksheet 생성 : 가장 하위에서 📊 아이콘 두번 클릭
2. Billing State와 County에 Geographic Role (지리적 역할) 부여 : 좌측 Data 패널 > 각 필드 우클릭 > Geographic Role > 각 필드에 알맞는 역할 부여
필드명 | Geographic Role |
Billing State | State/Province |
County | County |
3. 지리적 계층 생성 : Billing State 필드 우클릭 > Hierarchy > Create Hierarchy > 이름 지정 > County 필드 드래그해서 Billing State 하위에 놓기
2. 지역별 레코드 개수(기업 수)를 나타내는 Filled Map 만들기
1. 기업 수를 나타내는 파생변수 생성 : Data 패널 우클릭 > Create Calculated Field > '기업 수'라는 이름 입력 및 COUNTD([기업명]) 함수 입력 > Save
2. 기업 수 필드와 Billing State 필드 지도 적용 : Cmd 누른 상태에서 두 필드 클릭 > View에 Drop > 좌측 상단 Show Me에서 Filled Map 클릭
3. 색상 및 이름 표시 : Marks 카드 내의 Billing State pill을 Label로 드래그 (색상은 자동으로 기업 수로 지정되었을 것임!)
3. 지역별 기업 수와 자본금 크기를 나타내는 Symbol Map 만들기
1. 기존 Worksheet 복제 : Worksheet 이름 우클릭 > duplicate
2. 자본금 필드 더블클릭
3. Show Me에서 Symbol Chart 로 변경
4. 색상 및 크기 적용 : Marks 카드 내의 AGG(기업 수)를 color로 지정 > Color 클릭해서 Edit Color 클릭 후, Orange-Blue Light Diverging 팔레트 선택 후 OK > SUM(자본금)을 size로 지정 > Size를 클릭해서 크기 조정 > Billing State 필드를 Label로 지정
4. 완성 ! 👏🏻👏🏻👏🏻👏🏻👏🏻
📑 참고 자료