栅格文件访问和矢量文件访问
使用Python进行数据分析的过程中,我们常常要接触到两种文件,一种是矢量文件,另一种则是栅格文件,对于两种文件,我们都必须认识,并且掌握其读取和写入的方法。
1.矢量文件
a.认识矢量文件
矢量数据模型要素 (Feature)包括几何对象和属性信息两部分,几何对象可以用WKT(用于编程赋 值)和 WKB(用于数据库或二进制文件格式)。
dbf—属性信息
prj—投影信息
shp—图形格式,用于保存元素的几何实体。
shx—图形索引格式。几何体位置索引,记录每一个几何体在 shp文件之中的位置。
注意:每个文件必须是同类型的集合要素:点/线/面
b.读取矢量文件
基本信息读取:
ds = ogr.Open(filename, False) #打开 Shape 文件(False - read only, True - read/write)
layer = ds.GetLayer(0) #获取图层
spatialref = layer.GetSpatialRef() #投影信息
lydefn = layer.GetLayerDefn() #图层定义信息
geomtype=lydefn.GetGeomType()#几何对象类型(wkbPoint, wkbLineString, wkbPolygon)
读取属性字段的信息:
fieldlist = [] #字段列表 (字段类型,OFTInteger, OFTReal, OFTString, OFTDateTime)
for i in range(lydefn.GetFieldCount()): #根据字段数目,遍历字段
fddefn = lydefn.GetFieldDefn(i) #获取每个字段定义
fddict = {
'name':fddefn.GetName(),'type':fddefn.GetType(),‘