python 矢量数据的读取

import os
import sys
from osgeo import ogr
from osgeo import gdal
driver=ogr.GetDriverByName('ESRI Shapefile')
filename='C:\\Users\\admin\\Desktop\\空间信息处理与系统开发资料\\第六周\\Lesson6_osgeopy-data\\global\\ne_50m_populated_places.shp'
dataSource=driver.Open(filename,0) # filename一定要写绝对路径,0表示可读,1表示可写
#读取数据层
layer=dataSource.GetLayer()   #一般ESRI的shapefile都是填0的,如果不填的话默认也是0
print(layer.GetFeatureCount())  #该数据层有多少个点

#读出上下左右边界()
extent=layer.GetExtent()  #左、右、下、上

#读取一个点  GetFeature(i)相当于读取第i+1行,GetField('NAME')对应读取Name字段对应的第i+1行的值
feat = layer.GetFeature(0)    #提取数据层的第一个要素
#fid = feat.GetField('NAME')  #读取该要素字段名为NAME的值 对应字段值为汉字的会报错
#print(fid)

while feat:
    feat=layer.GetNextFeature() #读取下一个
    print(feat.GetField('NAME'))
    geom=feat.GetGeometryRef()
    geom.GetX()
    geom.GetY()
    print(geom)
print('success!')
dataSource.Destroy()

#教程:https://www.osgeo.cn/python_gdal_utah_tutorial/ch02.html#id4

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

我叫杨傲天

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

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

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

打赏作者

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

抵扣说明:

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

余额充值