基于gdal和osgeo库函数的矢量文件字段操作(不使用arcpy)

内容:shapefile文件字段添加、删除、赋值、面积计算、删除面积小于某阈值的图斑

(1)shapefile字段添加

shp_file = r''    #shapfile绝对路径

# 获取文件驱动
driver = ogr.GetDriverByName('ESRI Shapefile')

# 注意,如果这里第二个参数是0的话就是仅仅读取数据,不做写入或修改
# 我们要新建字段,所以第二个参数要设置为1————1 is read/write
data_source = driver.Open(shp_file, 1)

# 获取图层数据
layer = data_source.GetLayer(0)

# 字段定义
new_field_defn = ogr.FieldDefn(add_field_name, add_field_type)
# add_field_name为添加字段的名称,字符串类型
# add_field_type为添加字段类型,如果是字符串则为add_field_type=ogr.OFTString
                               如果是浮点数则为add_field_type=ogr.OFTReal
                               其他如整型等自行搜索

# 创建字段
layer.CreateField(new_field_defn)

(2)shapefile删除字段

shp_file = r''    #shapfile绝对路径

# 从给定图层中读取字段并找到该字段的索引编号
ds: ogr.DataSource = ogr.Open(shp_file, update=True)
layer: ogr.Layer = ds.GetLayer
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

John H.

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

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

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

打赏作者

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

抵扣说明:

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

余额充值