QGIS(지리정보)

QGIS shp 파일 좌표계 변환, Gson 데이터 변환(직렬화)

민돌v 2021. 5. 5. 18:05
728x90

도로명 주소 전자지도 데이터를 다운받으면, 해당 지역의 많은 shp파일을 확보할 수 있다.

이 데이터를 활용하기 위해서는

 

좌표계를 GRS80 UTM-K기준 좌표계에서 WGS 84 / Pseudo-Mercator(EPSG:3857)로 바꿔줘야 한다.

 

그 후에 이 데이터를 사용하기 위해서 찾아보니 GSON 파일 형식으로 바꿔줘야한다는걸 알았다.

1. QGIS 실행

QGIS destop 버전을 실행하고 프로젝트>새로 생성(Ctrl+N)을 통해서 새로운 프로젝트를 생성하며 탐색기의 XYZ Tiles>OpenStreetMap을 실행해서 지도를 켠다. (없을 시 플러그인 관리 및 설치를 통해 OpenLayer Plugin을 설치한다.)

 

그 후에 다운받은 shp 파일을 중 원하는 파일을 드레그 해주어 레이어파일에 추가해준다.

 

- 추가한 레이어에 마우스 우클릭 -> 좌표계 설정

 

- WGS84 / EPSG:3857 이 없어서 그냥 WGS84 제일 상단에 있는걸 설정해 주었다.(위.경도 형태의 WGS84)

 

 

2. GSON 파일로 변환

다음으로는 활용가능한 gson 파일로 변환해보자

 

다시 레이어에 마우스 우클릭 후 -> export -> Save Features as 클릭하고 공간범위를 체크해 준후 변환해 준다.

파일 이름과 좌표계 설정을 원하는 값으로 변경 후, 공간범위를 체크해줘야 내보내는 파일에 공간정보가 함께 담긴다. 

 

+ 뭔가 예상되로 좌표계 뽑히지 않았다.. WGS84 좌표계로의 변환이 제대로 이루어지지 않은거 같다.

 

이후에 다시 해보니 → (epsg:4326 - wgs84 로 하니깐 정상적으로 변환이되었다)

3. XrProjection의 이용

QGIS말고  XrProjection tool을 이용하여 변화할 수 도 있는데 그 내용은 아래의 블로그를 참조하자.

 

blog.naver.com/kcchang61/221350672356

 

Folium을 이용한 데이타 시각화

오늘은 아시안게임 축구 결승전이 열렸던 역사적인 날이다. 일본에게 2대1로 우승을 하여 드디어 손흥민이 ...

blog.naver.com

(블로그 내용 정리)

 

1. xrProject 다운

http://www.gisdeveloper.co.kr/wp-content/uploads/1/1406298632.zip

2. 좌표계 변환

변환 전 좌표계는 UTK-k(GRS80 타원체)로 지정

변환 후 좌표계는 WGS84 타원체의 경위도로 지정

 

 

sig좌표변환.dbf

sig좌표변환.shp

sig좌표변환.shx

이렇게 세개의 파일로 변환됩니다.

(파일명은 임의로 입력한 이름으로 저장됩니다.)

 

3. JSON 형태로 변환

mapshaper.org 에서 무료로 변환

http://mapshaper.org

 

mapshaper

Drop 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 files here to import with default settings

mapshaper.org

 

2번에서 변환한 파일 3개를 드래그앤 드롭으로 작업창에 넣어주고, 옵션값을 아래와 같이 해줍니다. 지도파일에 사용하는 한글코드를 맞춰주기 위한 작업입니다.

encoding=euckr

 

지도가 작업창에 표시됩니다. 오른쪽 상단의 simplify를 눌러서 지도를 단순하게 바꾸는 작업을 진행합니다.

상단의 바를 움직여 원하는 형태로 단순화 시킵니다.

단순화가 끝나면 Export 메뉴로 저장합니다. 포멧은 구글맵에서 사용할 것이라 GeoJSON 포맷으로 지정합니다.

정밀도는 소수점 3자리까지만 하고 (필요에 따라 정밀도는 달라집니다.) 한글 포멧은 UTF-8로 지정했습니다.

precision=0.001 encoding=utf-8

(하지만 나는 소수점을 끝까지 사용했기에 encoding = utf-8만 입력해 주었다)

export 버튼을 누르고 저장위치를 설정해주면, "SIG좌표변환.json"같은 .json 파일 형태로 변환되어 으로 저장됩니다.

 

(결과)

끝!

반응형