지도 polygon 만들기 (feat.QGIS)

강정우·2023년 1월 26일
1

자습

목록 보기
3/11

소개

  • 프로젝트를 하다보면 지도를 사용할 일이 올 수 있다.
    그때 조금 더 멋진 지도를 보여주고 싶다면 각 지역구(행정구)별로 overlay를 얕게주면 굉장히 멋들어진다.

  • 위와같은 행정구역은 1개의 배열에 굉장히 여러개의 위도, 경도 좌표가 들어가 있고 이를 뭉쳐 1개의 polygon을 형성한다.
    이에따라 우선 저 위도, 경도를 모을 수 있는 방법을 소개한다.

  1. QGIS : 굉장히 불친절하지만 1가지 어이없는 점만 주의하면 2번 보단 훨씬 사용하기 편하다.
  2. NGI Pro (from. 국토지리 정보원) : 우선 홈페이지 들어가는 것 부터 굉장히 오래걸린다. 그리고 매우 웃긴게 각종 행정 부처에서 제공하는 지리좌표 파일 확장자가 SHP 파일인데 이를 지원하지 않는 것이 웃참 포인트다.
    그렇니까 이건 쓰지말고 1번을 추천한다.

설치 및 사용법

  1. 공홈에서 받아준다.
  2. next를 갈겨 설치한다. 그럼 다음과 같은 화면을 볼 수 있다.

  • 저기 위의 네모를 클릭하면 openStreetMap을 클릭하면 세계지도가 펼쳐진다. 다음

  • 여기로 들어가거나 밑에 "레이어" 에 drag&drop으로 .shp 확장자 파일을 넣어준다.

  • 보면 알겠지만 매우 오밀조밀 촘촘하고 저 파일만 30메가가 넘는다. 이를 그대로 web상에서 로드하면 렌더링 시간을 한세월일 것이다.
    따라서 원하는 지역구를 잘라내고 이를 더 다듬어 주면 된다.

1. 지역구 잘라내기(feat.SQL)

  • 필터 설정에 들어간 다음
  • query문을 작성해주면 원하는 지역구가 나온다. 이때 필드값의 내용은 정보제공 홈페이지에 사용법이 같이 받아졌을 텐데 그 문서들을 자세히 살펴보면 된다.
  • 그리고 SQL문을 참조하여 작성하면 된다.

2. 다듬어주기

  • 위 레이아웃을 다듬기 전에 우선 export를 해보자

여기서 반드시 확인할 것 3가지
1. GeoJSON 으로 하기 왜냐면 뭐 보통 대부분 json으로 통신하니까
2. 저기 ... 을 눌러서 반드시 파일 경로를 지정하기
3. WGS84 로 바꾸어주기

  • 위 참고사항만 지켜주면 여러분은 3시간을 save했습니다.
  • 전국지도에서 전남권역만 했는데 아직도 26메가임 확실히 해안선이 많은 부분이라 드라마틱하게 줄진 않는다..
  • 해당 링크 mapShaper로 가서
    파일을 로드하고 option에 encoding=euckr을 추가해주어야 한글이 안 깨진다.
  • 그리고 Simplify를 통하여 단순화를 진행해주면 된다.
  • 마지막으로 encoding 방식을 utf-8로 바꾸어 진행해주면 끝이다.
  • 26메가 => 100kb로 단순화 작업 끝
  • lat, lng 및 한글도 안 깨지고 잘 들어가있는 것을 확인할 수 있다.

참고사항

  1. lat, lng 헷갈리지 않기

    • 값을 뽑아올 때 당연 [0]이 위도(lat)이고 [1]이 경도(lng)인줄 알았지만 반대로 출력되기에 값을 가져와서 사용할 때 반대로 잘 입력해주어야 1시간을 벌 수 있다...
  2. 지도상에서 찍어서 좌표 확인할 수 있는 사이트

    • 여러 사이트를 돌아다녀봐도 모두 google 지도에서 "자세히 보기"를 클릭하면 볼 수 있다고 하는게 난 왜 안보인다 그래서 개열받아서 내가 찾은 사이트를 소개한다.
    • GPS좌표 여기서 원한는 위치값을 얻어서 지도 중심좌표로 사용할 수 있다.
profile
智(지)! 德(덕)! 體(체)!

0개의 댓글