ArcMap으로 가져 오려는 XY 데이터의 여러 열이 있습니다. 수동으로 수행하려면 변환 도구에서 Excel To Table 스크립트를 실행 한 다음 테이블을 마우스 오른쪽 단추로 클릭하고 XY 데이터 표시를 선택하여 각 XY 값 쌍에 대해 반복합니다. "Excel to Table"스크립트의 출력을 "Make XY Event Layer"도구의 입력에 공급하는 모델을 만들었습니다. 문제는 스프레드 시트를 가져 오지 않고 처음부터 X 필드 또는 Y 필드를 선택할 수 없다는 것입니다. 그러나 실행할 때 "X 필드 값 없음"및 "Y 필드 값 없음"오류가 발생합니다. 그런 다음 XY 데이터를 표시하기 위해 작성한 스크립트에 "Excel to Table"스크립트의 출력을 제공하는 모델을 만들었습니다. 이 모델을 실행하면 "ExecuteError : 실행하지 못했습니다. 매개 변수가 유효하지 않습니다."오류 000728 : 필드 Latitude_decimal_degrees_가 테이블 내에 존재하지 않습니다. " 이 프로세스를 파이썬이나 모델 빌더로 할 수 있습니까? 그렇다면 어떻게해야합니까?Python 또는 Model Builder를 사용하여 XY 레이어 만들기
0
A
답변
0
제 생각에는 여러 개의 좌표 필드가있는 단일 지오 데이터베이스 테이블이나 DBF가 있고 각 XY 좌표 쌍에 대해 여러 개의 지형지 물 레이어를 만들고 싶습니다. 그렇다면 ArcMap의 Python Window에서이를 실행하면 트릭을 수행해야합니다.
import arcpy
Table= r"C:\SomeDataPath\MyTable"
# Replace 'X' and 'Y' in each sublist with the name of the respective X and Y
# field for each coordinate pair in the table and replace 'lyrName' with the
# name you want to give to the FeatureLayer to be created.
# Expand with more sublists as needed
CoordinateFields = [
["X", "Y", "lyrName"],
["X", "Y", "lyrName"],
["X", "Y", "lyrName"]
]
SR = arcpy.SpatialReference("Name of the Projection used by coordinates")
for CoordinatePair in CoordinateFields:
arcpy.MakeXYEventLayer_management(Table,
CoordinatePair[0],
CoordinatePair[1],
CoordinatePair[2],
SR)
Enjoy!
스크립트가 어떻게 보이며 '내가 원하는 방식대로 작동하지 않습니다'라는 의미는 무엇입니까? – GISGe
필드 이름이 실제로 유효하고 유효하고 (공백없이 숫자로 표시되어 있음), Excel 필드 형식이 ArcGIS에 숫자로 읽혀 있는지 확인하십시오. 고유 한 ID로 파일을 추가하면 가끔 도움이됩니다. – GISGe
원본 데이터가 제공되는 Excel의 버전은 무엇입니까? 또한 어떤 ArcMap 버전을 사용하고 있습니까? Excel 파일의 버전에 따라 ArcMap이 지원할 수도 있고 지원하지 않을 수도 있습니다. ArcMap 10.1 이상에서는 2007 년 이후의 Excel 파일이 지원되지 않습니다. – Ashatz11