读取shp文件中的经纬度坐标

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
要通过Python读取Excel表某一列的经纬度坐标,并将多组经纬度坐标生成多个矢量面文件,您可以使用pandas库来读取Excel文件,并结合GDAL库来生成矢量面文件。下面是一个示例代码: ```python import pandas as pd from osgeo import ogr # 读取Excel文件 data = pd.read_excel('input.xlsx') # 获取经纬度列数据 lon_lat_data = data['经纬度'] # 遍历每组经纬度坐标 for i, coordinates in enumerate(lon_lat_data): # 创建Shapefile数据源 driver = ogr.GetDriverByName('ESRI Shapefile') data_source = driver.CreateDataSource(f'output_{i}.shp') # 创建图层 layer = data_source.CreateLayer('polygon', geom_type=ogr.wkbPolygon) # 创建字段 field_defn = ogr.FieldDefn('id', ogr.OFTInteger) layer.CreateField(field_defn) # 创建多边形 ring = ogr.Geometry(ogr.wkbLinearRing) # 分割经纬度坐标 coordinates = coordinates.split(';') # 添加经纬度坐标点 for coordinate in coordinates: lon, lat = coordinate.split(',') ring.AddPoint(float(lon), float(lat)) # 创建多边形对象 polygon = ogr.Geometry(ogr.wkbPolygon) polygon.AddGeometry(ring) # 创建要素 feature_defn = layer.GetLayerDefn() feature = ogr.Feature(feature_defn) feature.SetGeometry(polygon) feature.SetField('id', i+1) # 将要素添加到图层 layer.CreateFeature(feature) # 清理资源 feature = None data_source = None ``` 请将代码的'input.xlsx'替换为您实际的Excel文件路径。此示例代码假设Excel文件有一列名为'经纬度',其包含多个经纬度坐标,每个经纬度坐标之间使用分号进行分隔,经度和纬度之间使用逗号进行分隔。 代码将遍历每组经纬度坐标,为每组坐标创建一个单独的Shapefile文件文件名将使用索引编号进行命名,例如"output_0.shp","output_1.shp"等。 请确保已安装pandas和GDAL库,可以使用以下命令进行安装: ``` pip install pandas pip install gdal ``` 注意:在使用GDAL库之前,还需要安装GDAL的Python绑定,可以通过Anaconda进行安装,或者下载GDAL二进制文件进行安装。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我是水怪的哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值