由于最近在处理shp文件,想要跳出arcpy的限制,所以打算学习一下pyshp包的使用方法。在使用《Python地理空间分析指南(第2版)》的时候发现书中部分代码由于版本更新,无法运行。开贴记录踩过的雷。
这个问题是出现在5.5.4的shapefile文件修改中:
# -*- coding:gb2312 -*-import shapefileimport utm file_path=r"C:/Users/skfzh/Documents/python地理空间分析指南/第五章/5.5.4/NYC_MUSEUMS_GEO/NYC_MUSEUMS_GEO.shp"r=shapefile.Reader(file_path)# print(list(r.fields))# print(r.shapeTypeName)#版本修改,路径和类型都要在writer里面定义w=shapefile.Writer(r"C:/Users/skfzh/Documents/python地理空间分析指南/第五章/5.5.4/output/NYC_MUSEUMS_UTM",/ shapeType=r.shapeType)w.fields=list(r.fields[1:])for rec in r.iterShapeRecords():#新版本已经删除了w.records # print(*rec.record) w.record(*rec.record)for sha in r.iterShapes(): # print(sha.points[0]) lon,lat=sha.points[0] y,x,zone,band=utm.from_latlon(lat,lon) w.point(x,y) w.close()
以上这篇使用pyshp包进行shapefile文件修改的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持武林网之家。
新闻热点
疑难解答