从xy表创建多边形Shapefile

对于背景:我正在尝试创建一个将使用一组坐标(当前在.csv文件中)并输出具有多个面要素的要素类的工具。我已经成功编写了一个脚本,该脚本将使用以下一系列X,Y坐标创建一个面要素类。但是,这显然需要将所有单独的坐标放入脚本编辑器中。所以我想我的问题是,是否可以使用excel表在python编辑器中创建列表,然后可以使用该列表创建多边形?还是我必须将excel表转换为XY shapefile,然后在python中进行操作?

import arcpy
import os

coordinates = [(-117.2000424,34.0555514),(-117.2000788,34.0592066),(-117.1957315,34.059230 
(-117.1956951,34.0556001)]

result = arcpy.management.CreateFeatureclass(arcpy.env.scratchGDB,"esri_square","POLYGON",spatial_reference=4326)
feature_class = result[0]


with arcpy.da.InsertCursor(feature_class,['SHAPE@']) as cursor:
    cursor.insertRow([coordinates])

但是,这显然需要将所有单独的坐标放入脚本编辑器中。所以我想我的问题是,是否可以使用excel表在python编辑器中创建列表,然后可以使用该列表创建多边形?还是我必须将excel表转换为XY shapefile,然后在python中进行操作?

yxj366 回答:从xy表创建多边形Shapefile

如果您询问是否可以重新设置excel文件的格式,以便可以将其作为一组多边形读取,请考虑尝试将坐标集重新格式化为WKT格式。

WKT format definition

如果可以的话,应该很容易阅读Excel工作表并将其转换为空间数据框

本文链接:https://www.f2er.com/3089138.html

大家都在问