위도 long을 UTM으로 일괄 변환 하시겠습니까?


11

위도와 경도의 긴 목록을 포함하는 .csv 파일이 있습니다. 목록을 투영 된 UTM 좌표계로 일괄 변환하는 효율적인 방법이 있습니까?

답변:


8

아마도 가장 간단한 방법은 QGIS 및 구분 된 텍스트 플러그인과 같은 것을 사용 하여 데이터를 가져온 다음 내보내는 것입니다. 커맨드 라인과 확장 가능한 것을 찾고 있다면 Sasa가 언급 한 VRT 접근 방식이 좋습니다.

다음을 사용하여 파일 입력 및 출력으로 수행 할 수도 있습니다 gdaltransform.

gdaltransform -s_srs epsg:4326 -t_srs epsg:25832 < space-delimited-coordinates.txt

결과에 더 프로그래밍 방식으로 액세스 해야하는 경우 pyroj사용하여 geographika의 답변을 확인하십시오 .


QGIS에서 데이터를 내보내는 방법에 대해 더 구체적으로 설명 할 수 있습니까? 가져온 레이어를 포인트로 마우스 오른쪽 버튼으로 클릭하고 다른 이름으로 저장 ...을 클릭 한 다음 UTM 16N을 투영 좌표계로 지정했습니다. 그러나 결과 파일은 변경되지 않았습니다!
hpy

레이어 눈금자에 CSV 포인트를로드 한 다음 다른 이름으로 저장> 선택한 crs> 변환 할 시스템을 선택하고 저장하십시오. CSV dfsfsd로 돌아가려면
yair suari

일부 편집 문제. 희망은 NES의 위치가 CSV로 다시 저장을 crs를 얻을 수있는 형상 functionsd에 $ x와 $ Y 값을 계산기를 속성을 사용하여 계산 CSV로 돌아갑니다 경우
yair suari

9

아크 맵으로
csv를 추가하고 위도 long을 사용하여 이벤트 테이블을 만듭니다. (레이어를 마우스 오른쪽 버튼으로 클릭> "XY 데이터 표시")

테이블과 포인트 레이어 (실제 포인트 레이어가 아니라 나중에 내 보내야 함)로 이벤트 레이어를 만듭니다.

xy 표시

문서 투영 (데이터 프레임 속성)을 원하는 파일 출력으로 설정합니다. TOC "> 속성> 좌표계 탭에서 도면층을 마우스 오른쪽 버튼으로 클릭합니다.

문서 소품

원하는 투영

TOC> 데이터 내보내기에서 레이어를 마우스 오른쪽 버튼으로 클릭하십시오.

수출

"데이터 프레임과 동일한 좌표계를 사용하려면"옵션을 사용하십시오.

수출


7

ogr2ogr에서이를 처리 할 수 ​​있어야합니다 ( 빠른 설치를 위해 FWTools 를 다운로드 할 수 있음 ).

이 스레드 는 CSV 데이터를 재 투영하는 방법을 보여줍니다. 요약하면 CSV 열에 대한 참조가 포함 된 VRT 파일을 만들어야합니다.

<OGRVRTDataSource>
    <OGRVRTLayer name="test">
        <SrcDataSource>test.csv</SrcDataSource>
        <GeometryType>wkbPoint</GeometryType>
        <GeometryField encoding="PointFromColumns" x="RW" y="HW"/>
    </OGRVRTLayer>
</OGRVRTDataSource>

그런 다음 재 투영을 위해 ogr2ogr을 실행하십시오.

ogr2ogr -s_srs "epsg:31466" -t_srs "epsg:25832" -f "CSV" -lco GEOMETRY=AS_XY -sql "SELECT PNR FROM test" temp_dir test.vrt

epsg : 31466을 UTM 좌표계에 적합한 EPSG 코드로 바꿔야합니다.





3

내가 이해하는 것처럼 단순히 파일을 다시 투영하고 싶지 않고 좌표 자체를 변환하고 새 좌표가있는 새 파일을 원합니다. Google에서 "lat / lon을 utm으로 변환"하는 경우 위스콘신 대학교 그린 베이 또는 위 의 whuber의 답변 에서이 변환을 수행 할 수있는 Excel 스프레드 시트를 찾아야 합니다. 또는 AllTrans 또는 Franson Coordtrans와 같은 소프트웨어를 구입하여 여러 좌표계와 일괄 변환 할 수 있습니다.

또는 덜 간단하지만 더 교육적인 방법은 gdal 또는 FWTools의 구문을 배우는 것입니다.


3

스크립팅 솔루션의 경우 pyproj를 사용할 수 있습니다 .

import sys
import csv
import pyproj

# example invocation
# ./reproj.py ./file.csv 32619 4326

if (len(sys.argv) != 4):
    print '%s <csvfile> <epsg_code_in> <epsg_code_out>' % sys.argv[0]
    sys.exit(1)
else:
    p1 = pyproj.Proj(init='epsg:%s' % sys.argv[2])
    p2 = pyproj.Proj(init='epsg:%s' % sys.argv[3])

    f = open(sys.argv[1], 'r')
    table = csv.reader(f)
    for row in table:
        print '%s %s' % (row[1], row[2])
        newxy = pyproj.transform(p1, p2, row[1], row[2])
        print '%s %s' % (row[0], newxy[0], newxy[1])
    f.close()

동료 프로그래머 감사합니다! NB : CSV 파일에 3 개 이상의 열이 있고 xy 데이터가 두 번째 및 세 번째 열인 경우 작동합니다. 입력 x / y가 처음 두 열에 있기 때문에 색인을 약간 조정해야했습니다. 매우 명확하고 확장 가능하며 재사용 가능합니다!
Ahmed Fasih

2

다음 새 사이트는 파일을 온라인으로 변환합니다. (pyproj를 사용합니다)

또한 KML을 생성하고 입력 파일을 '있는 그대로'남겨두고 변환 프로그램에 맞게 다시 포맷하지 않을 수 있습니다.

Sorry i cant post a numeric domain so have to wrap it in a code block!
http://54.251.49.75/XYZ_tools

링크를 잘라서 붙여 넣으십시오.


그것을 제거했다. 사용자 당 연간 120 달러 + 관리자 시간. 죄송합니다.
Ninga

1

나는 ARC 솔루션을 가지 않을 것이다. 이러한 일반적인 변환에는 http://www.hamstermap.com 과 같은 많은 온라인 도구 가 있습니다. 좌표 목록을 복사하여 붙여 넣기 만하면 즉시 변환됩니다.


Lon / Lat to UTM에 대한보다 나은 온라인 배치 변환기는 < zonums.com/online/coords/cotrans.php?module=13 > 햄스터 맵 도구가 입력 좌표를 변경하는 것처럼 보이지만 zonums 도구는 WGS84에서만 입력 데이터 및 전세계 데이터에 사용되는 영역 (zonum)도 있지만 영역을 설정할 수는 있습니다. 위도 / 경도 또는 lon /도에서 올바른 옵션을 선택하십시오. Zonums 도구는 올바른 결과를 제공하며 스크립트 나 그 밖의 것들을 뒤섞는 것보다 확실히 사용하기 쉽습니다.
IanS
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.