쉐이프 파일을 GeoJSON으로 변환 하시겠습니까?


19

Texas Senate Districts 웹 사이트 Shapefile을 Google Maps API와 함께 사용할 GeoJSON 파일 로 변환하려고합니다 . QGIS를 사용하여 촉진하고 있지만 투영 / 좌표를 올바르게 얻을 수 없습니다. 지금까지 Google Mercator (EPSG : 900913)와 WGS 84 (EPSG : 4326)를 운없이 사용해 보았습니다. 결과를 확인하기 위해 OpenLayers를 사용하고 있으며 기니 만 근처에 텍사스를 계속 배치하고 있습니다 (0 위도, 0도).

답변:


23

다운로드 가능한 shapefile을 QGIS에 직접로드하는 것은 문제가되지 않습니다.

데이터는 EPSG : 3081에 있습니다. Google API는 latlong 값을 예상하므로 대상 CRS는 EPSG : 4326이어야합니다.

레이어-> 다른 이름으로 저장 ...을 마우스 오른쪽 버튼으로 클릭하여 다른 파일 이름 인 GeoJSON과 EPSG : 4326을 새 CRS로 선택하십시오. 캔버스에 결과를 추가하여 정렬 된 것을 확인할 수 있습니다 ( On-the-fly-reprojection선택).


여러 레이어로 "다른 이름으로 저장"할 수있는 방법이 있습니까?
chrismarx

아니요, 모든 파일에는 다른 대상 파일 이름이 필요합니다. 배치 처리를 위해 명령 행에서 ogr2ogr을 사용할 수 있습니다.
AndreJ

자동 파일 이름 지정에 대한 합리적인 기본값과 같은 것을 지원하는 배치 처리 지원과 같은 결과 파일을 폴더로 보내는 데 사용될 수 있습니다.
chrismarx

6

다음은 서버 측 코드없이 영어 이외의 인코딩을 지원하는 웹 브라우저를 통해 shapefile을 geojson으로 변환하는 도구입니다. zip 파일을 업로드하고 올바른 텍스트에 대한 인코딩을 설정하면됩니다.

https://github.com/gipong/shp2geojson.js

Google Map api v3과 함께이 라이브러리를 사용하는 경우 , State of Texas Senate Districts 웹 사이트 에 .prj 파일이 포함 된 ZIP 아카이브 (PlanS172.zip) 다운로드 형식으로 EPSG 코드 필드를 건너 뛸 수 있습니다 .

loadshp({
    url: '/shp/PlanS172.zip', // path or your upload file
    encoding: 'big5' // default utf-8
}, function(geojson) {
    // geojson returned
});

여기에 이미지 설명을 입력하십시오


5

커맨드 라인을 통해 :

ogr2ogr -f GeoJSON -t_srs crs:84 output.geojson input.shp

이 답변 의 웹 클라이언트가 사용하는 것 같습니다.


방금 테스트했습니다. RAM 소비와 관련하여 QGIS보다 훨씬 잘 작동합니다!
Ikar Pohorský


-2

GeoJSON은 JavaScript 객체 표기법을 기반으로합니다. 이 게시물에서는 셰이프 파일을 온라인 또는 오프라인으로 또는 API를 사용하여 변환 할 수있는 다양한 방법을 살펴볼 수 있습니다. 구글 맵에서 사용 하기 위해 shapefile을 GeoJSON 파일 로 변환하려면 이 게시물을 확인하십시오 .

온라인 또는 오프라인 또는 API – Shapefile을 GeoJSON으로 변환하는 다양한 방법


2
외부 리소스에 대한 링크가 권장되지만 링크 주위에 컨텍스트를 추가하여 동료 사용자가 그 정보와 그 이유를 알 수 있도록하십시오. 대상 사이트에 도달 할 수 없거나 영구적으로 오프라인 상태가되는 경우 항상 중요한 링크의 가장 관련성있는 부분을 인용하십시오.
ArMoraer
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.