云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > Python与开源GIS:使用OGR定义矢量数据的字段

Python与开源GIS:使用OGR定义矢量数据的字段

  • 62 次阅读
  • 3 次下载
  • 2025/5/7 20:42:19

Python与开源GIS:使用OGR定义矢量数据的字段 2012-06-16 04:00 作者: bukunu 来源: 本站 浏览: 486 views 我要评论 字号: 大 中 小 摘要: GIS数据除了图形要素之外,更重要的就是属性数据了。关于GIS数据的属性,完全可以用关系型数据库的观点来看待。只不过在这个关系数据库中,专门一列索引值,并数据库中的记录与图形对象对应起来,而且,这种对应还是“一一对应”。 我们可以给那个矩形添加属性数据。 ... GIS数据除了图形要素之外,更重要的就是属性数据了。关于GIS数据的属性,完全可以用关系型数据库的观点来看待。只不过在这个关系数据库中,专门一列索引值,并数据库中的记录与图形对象对应起来,而且,这种对应还是“一一对应”。 我们可以给那个矩形添加属性数据。 1 # -*- coding:utf-8 -*- 2 from osgeo import ogr 3 import os,math

4 driver = ogr.GetDriverByName(\5 extfile = 'rect_field_demo.shp' 6 if os.access( extfile, os.F_OK ): 7 driver.DeleteDataSource( extfile ) 8 extent = [400, 1100, 300, 600]

9 newds = driver.CreateDataSource(extfile)

10 layernew = newds.CreateLayer('rect',None,ogr.wkbPolygon) 11 fieldcnstr = ogr.FieldDefn(\12 fieldcnstr.SetWidth(32) 13 layernew.CreateField(fieldcnstr) 14 fieldf = ogr.FieldDefn(\15 layernew.CreateField(fieldf)

16 wkt = 'POLYGON ((%f %f,%f %f,%f %f,%f %f,%f %f))' % (extent[0],extent[3], 17 extent[1],extent[3], extent[1],extent[2],

18 extent[0],extent[2], extent[0],extent[3]) 19 geom = ogr.CreateGeometryFromWkt(wkt) 20 feat = ogr.Feature(layernew.GetLayerDefn()) 21 feat.SetField('fd',\这里是字段的值\22 feat.SetGeometry(geom) 23 layernew.CreateFeature(feat) 24 newds.Destroy()

这个例子可以看到如何创建一个带属性的数据。要数据带属性表,就要首先定义表头,定义表头就要定义数个字段,而要定义一个字段就要定义一个字段描述描述,然后把这个字段描述创建到layer中。

有了表头,就可以在输入Feature时添加属性表的内容。方法就用SetField。 然后用QGIS打开ShapeFile看一下,就可以看到结果了。

这里故意使用的中文的字段值。注意字符串的字段是有宽度的,如果超出宽度,显示的时候则会出现问题。另外还要注意的就是定义字段的顺序。

  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

Python与开源GIS:使用OGR定义矢量数据的字段 2012-06-16 04:00 作者: bukunu 来源: 本站 浏览: 486 views 我要评论 字号: 大 中 小 摘要: GIS数据除了图形要素之外,更重要的就是属性数据了。关于GIS数据的属性,完全可以用关系型数据库的观点来看待。只不过在这个关系数据库中,专门一列索引值,并数据库中的记录与图形对象对应起来,而且,这种对应还是“一一对应”。 我们可以给那个矩形添加属性数据。 ... GIS数据除了图形要素之外,更重要的就是属性数据了。关于GIS数据的属性,完全可以用关系型数据库的观点来看待。只不过在这个关系数据库中,专门一列索引值,并数据库中的记录与图形对象对应起来,而且,这种对应还是“一一对应”。 我们可以给那个矩形添加属性数据。 1 # -*- coding:utf-8 -*- 2 from osgeo im

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com