基于python和ArcGIS的arcpy包读取shp文件的空间属性
本人第一篇原创,希望可以给小伙伴们带来一丝丝*10086的灵感!
shp文件空间属性读取
在ArcGIS中shp文件的属性文件dbf常常包含着所有要素的基本属性。在一般的查看属性表中,我们可以看到属性表的ObjectID和shape栏为生成文件时默认的属性,其中shape属性即为空间属性,不仅有空间属性的分类(点、线、面)还有当前坐标系统下的空间坐标地理位置。对于点要素而言,可以直接导出属性表获取几何坐标,但是对于线和面,直接导出的仅为要素的几何重心坐标。以往读取shp文件的方法太复杂了(不仅要了解这种文件格式的存储方法还要自己编写函数),这时,arcpy提供了可以说是傻瓜函数的办法,可以直接读取shape属性。
是不是很心动,那就继续往下看!
Arcpy
具体的官方文档可以在ArcMap中按F1获取,主要是针对矢量和栅格文件的处理,还有与之对应的网络分析和空间分析模块。本文主要介绍其中数据访问模块。
针对本文的需要,我们主要使用其中的searchcuror类(SearchCursor 用于建立从要素类或表中返回的记录的只读访问权限。返回一组迭代的元组。元组中值的顺序与属性表的字段顺序相符)。当然访问的最关键属性就是shape属性,根据官方文档给出的语法(SearchCursor (in_table, field_names)),in_table为要访问的要素,field_names为要访问的字段名,shape属性访问使用SHAPE@取代属性名。
(以上仅代表个人理解,有误请指出。)
话不多说,直接上代码
在pycharm等IDE平台中需要对环境进行配置:

最低0.47元/天 解锁文章
1502

被折叠的 条评论
为什么被折叠?



