본문 바로가기
IT/Power BI

[Power BI] #18 도형 맵 - 서울 행정 지도 시각화

by Tony Jung 2022. 4. 25.
반응형

 

Power Bi를 이용하여 시각화를 하다보면 행정구역 별로  매출, 고객 정보등의 데이터에 대하여 표현이 필요할 경우가 있을 것입니다. 물론 기존 Power BI Map 을 이용해도 충분히 가능하지만.  지도 보다는 간단 명료한  도형 맵을 이용하여 공간분석이 적합한 경우도 있을 것입니다. 

Power BI의 도형 맵 (Sharpe Map)은 topojson 포맷을 파일만을 지원하기에 우리는 원하는 행정 구역 경계 파일을 확보하여 topoJson 포맷으로 변경을 하여야 합니다. 

우선 첨부파일에 "시도" 그리고 "시군구"가 분리되어 있는 SHP 행정구역 파일을 첨부하였답니다.
해당 파일을 다운받아서 압축을 풀어주세요 

예제에서는 시군구 행정구역 파일을 이용하여 서울시의 구를 추출하여 시각화 할 것입니다.

자.. 이젠 우선 공간정보 생성,편집을 위한 소프트웨어인 QGIS를 설치하셔야 합니다. 
QGIS는 착하게도 무료 소프트웨어로 공간정보 활용에 많은 도움이 될 것입니다.  QGIS 다운로드 

QGIS를 설치하셨다면 소프트웨어를 실행 후 1번의 탐색창에서 다운로드한 파일을 찾아 선택 하면, 2번 레이어 창에 파일이 나타나고 3번 캔버스에 지도가 보여질 것입니다. 

어라.. 근데 4번을 보면 " 알수 없는 좌표계" 라고 표기가 됩니다행정 지도 변환시 가장 문제가 되는 것으로 아무래도 정보사이트에서 지도를 다운받거나 개발사이트를 통해 지도를 받았을 때 이렇게 시스템에서 인식할 수 없는 좌표를 사용하는 경우가 있답니다. 

이럴경우는 먼저 POWER BI에서 인식할 수 있는 공통 좌표계 (EPSG 4326 / WGS84)로 변환을 하여야 합니다. (아주 중요!!!!)
공통 좌표로 변환 하지 않고 이 포스트 내용을 다 실행 한 후 POWER BI에 적용하면? 아래와 같은 깜짝 놀랄 결과가 기다릴 것입니다. 

저도.. 아무도 말안해줘서.. 한참을 헤맸다는... ㅜㅜ

  • 공통 좌표계 EPSG 4326 / WGS84 로 변환

레이어에 오른쪽 마우스를 클릭하고 Export -> 객체를 다른이름으로 저장을 클릭합니다. 

표맷을 "ESRI ShapeFile" 로 선택하고 좌표계를 EPSG:4326-WGS84 로 선택 해주세요. 아랫쪽에 레이어 옵션에서는 Resize를 YES로 선택하시구요. 파일이름은 폴더를 하나 만들어서 그곳에 저장을 하셔야 됩니다. 함께 만들어지는 파일들이 좀 많아서.. 

이렇게 저장을 완료하면 지정된  폴더에는 아래와 같은 파일들이 생성 된답니다. 

자 이젠 좌표계를 변경해서 저장을 하였으니 다시 불러와야겠지요? 위의 2번의 레이어 영역에서 처음 선택한 sig 레이어를 제거한 다음  상단의 레이어 > 레이어 추가 > 벡터레이어 추가를 해주세요 

추가할때는 원본 유형을  4번 "디렉터리" 로 선택하고 원본 벡터 데이터셋을 위에서 만든 폴더로 지정해 주시면 됩니다. 

 

 

레이어가 추가되면 아래 5번과 같이 새로운 레이어가 생성된답니다. 그리고 하단에 기존 "알 수 없는 좌표계"에서 EPSG:4326 로 표기가 바뀌어있을 것입니다. (정상!!)

 

반응형

 

  • 원하는 지역 선택하여  자르기 

새로 생긴 레이어의 오른쪽 마우스를 클릭하여 "속성 테이블 열기"를 클릭하면 아래와 같이 창이 나타납니다.  나타난 창에서 SIG_CD (우편번호)를 클릭하면 해당 구역의 정보가 보여지며 지도에 노랑색으로 표기가 될 것입니다. 이렇게 원하는 지역을 하나씩 확인 하며 선택 할 수 있답니다. 

하나씩 확인하며 선택하는 것도 방법이겠지만 ... 표현식 (쿼리)를 이용해서 조건에 맞게 일괄 선택할 수도 있답니다. 
6번 표현식을 이용한 객체 선택을 클릭합니다. 

7번 표현식 탭에서 8번 표현식 입력란에 우편번호가 들어있는 SIG_CD 필드값에 대한 범위를 선택할 수 있답니다. 예제 파일에서 서울은 11110 부터 11740 까지입니다. 

객체선택 버튼을 클릭하면 캔버스에 표현식에 맞는 지역이 선택될 것입니다. 그리고 닫기를 클릭해 주세요. 

이젠 서울의 구로 표현되는 공간정보 지도를 선택하였으니 이상태에서 POWER BI에서 사용할 수 있는 Topojson 포맷으로 만들기 위해 geojson 파일로 내보내기를 해야 합니다. 선택한 레이어오른쪽 마우스 클릭 하여  내보내기 (Export) 의 " 선택한 객체를 다른 이름으로 저장" 을 클릭합니다. 

9번의 클릭한 후 원하는 경로에 파일 이름을 만든 다음 확인을 누르시면 해당 경로에 .geojson 파일이 생성됩니다. 

 

  • topojson 포맷으로 변경 하기 

만들어진 geojson 파일을 topojoson 방식으로 변경하기 위해서 무료 사이트인  Mapshaper 을 이용할 것입니다. 
(Org 사이트들은...너무 좋아요..)

바로가기 : mapshaper

 

mapshaper

Drop or paste files here or select from a folder Shapefile, GeoJSON, TopoJSON, DBF and CSV files are supported Files can be loose or in a zip archive Quick import Drop or paste files here to import with default settings

mapshaper.org

사이트에 접속하여 상단 영역에서 Select 로 만들어진 Geojson을 선택합니다. 

새로운 창이 나타나면 10번 Import 버튼을 클릭합니다. 

다음 화면에서 생성되는 지도 모양을 확인 한 다음 우측 상단의 11번 Export를 클릭합니다. 

 

File Format을 12번 처럼 TopoJSON을 선택한 다음  Export를 해주시면  TopoJson이 다운로드 됩니다. 

 

자 이렇게 생성한 TopoJSON 포맷의 파일을 Power BI에서 불러오면 아래와 같이 행정구역별 도형맵이 완성이 된답니다. 물론 JSON파일을 가져와서 테이블로 변환을 시켜야하는 과정이 있지만 이건 다음 포스팅에.. ㅎㅎ 

 

도움이 되셨다면 광고클릭? 좋아요? 댓글? 부탁드려요 ^^ 

반응형

댓글