shapefile是GIS中一种数据类型,在ArcGIS中被称为要素类(Feature Classes),主要包括点(point)、线(polyline)和多边形(polygon)。

解析geopandas文件的方式很多,本文介绍两个 pyshp和geopandas。

1.pyshp(Python Shapefile Library)

是一个Python库,用于在Python脚本中对ArcGIS中的Shapefile文件(.shp,.shx,.dbf等格式)进行读写操作。 安装:

pip install pyshp

解析:

Reader类, 对shapefile文件读取;Editor类,对shapefile文件编辑;Writer类,对shapefile文件写操作

每个文件包含 "几何数据"(Geometry)和"属性数据"(Attribute Record) ,两个文件数据一一对应。

import shapefile

tpath = 'D:\\work2017\\china_train\\china-shp\\train\\rai_4m.shp'

sf = shapefile.Reader(tpath)

shapes = sf.shapes()

每个几何对象包含有4个属性:数据类型(shapeType),代表该"几何数据"对象的数据类型(点,shapeType=1,线,shapeType=3,多边形,shapeType=5);数据范围(bbox),只针对多点数据,代表该"几何数据"对象的边界范围;数据块(parts),只针对线或者多边形,代表该"几何数据"对象各个块的第一个点的索引;点集(points),代表该"几何数据"对象的所有点坐标。 "属性数据"即每个"几何数据"对象在属性表中的对应项。

属性数据就是一个二维数据

recds = sf.records()

for i in recds:

print i[9]

解析后一行属性的结果:

: [2.4675391, 9.0042706, 2, 3, '30000', '232723', '\xc4\xae\xba\xd3\xcf\xd8', '23', '27', '23', 52.933796, 122.69707]

2. geopandas

它是以pandas的模式对 shp文件的封装,使用起来更方便。

安装:conda install -c conda-forge geopandas

依赖库需要c++环境,如果还是用 pip安装,可能会安装不成功。

解析与展示:

%matplotlib inline

import shapely, geopandas, fiona

import seaborn as sns

from fiona.crs import from_epsg,from_string

tpath = 'D:\\work2017\\china_train\\china-shp\\train\\rai_4m.shp'

shp_df = geopandas.GeoDataFrame.from_file(tpath,encoding = 'gb18030')

shp_df.head()

shp_df.plot()

解析后数据:

展示图形:

参考:

1.Using geopandas on Windows http://geoffboeing.com/2014/09/using-geopandas-windows/ 2.shapefile+matplotlib https://stackoverflow.com/questions/15968762/shapefile-and-matplotlib-plot-polygon-collection-of-shapefile-coordinates 3.用Python做地图投影 http://www.jianshu.com/p/241546a36a93

c语言如何显示shp文件,shapefile文件(shp)读取相关推荐

  1. SHP(shapefile)文件详细格式介绍

    shape文件由ESRI开发,一个ESRI(Environmental Systems Research Institute)的shape文件包括一个主文件,一个索引文件,和一个dBASE表.其中主文 ...

  2. ESRI的Shapefile文件向Google Earth中KML文件的格式转换

    转载自http://wenku.baidu.com/link?url=3TG7c0cERbdnZwFBLq6n2v-chB-k4ja5ikNYSyRQHyLf4yvYCGBEGrlhch8GD5e-9 ...

  3. .shp文件的存储结构是怎样的?底层读取shapefile文件

    .shp文件的存储结构是怎样的?底层读取shapefile文件 基础知识 shp的存储结构 python 字节流读取Shp文件 基础知识 大家都比较熟悉shp文件,它是GIS软件可以读取的矢量文件.但 ...

  4. python处理shp和栅格文件的相关库shapefile、gdal等

    读取含polygon的shp文件: def readshp(shp_path):sf = shapefile.Reader(shp_path)#创建reader类的对象进行shapefile文件的读取 ...

  5. ncl 添加点shp文件_一:python读取shapefile文件

    使用geopandas读取shapefile格式的矢量文件 包括shapefile文件的读取.修改.保存 import geopandas as gpd # 导入包 segpath = r" ...

  6. shapefile文件(shp)读取

    shapefile是GIS中一种数据类型,在ArcGIS中被称为要素类(Feature Classes),主要包括点(point).线(polyline)和多边形(polygon). 解析geopan ...

  7. 如何将Shapefile(Shp)文件转换为AutoCAD(Dwg、Dxf)文件?

    ESRI Shapefile(shp),或简称shapefile,是一种空间数据开放格式.目前,该文件格式已经成为了地理信息软件界的一个开放标准.Shapefile也是一种重要的交换格式,它能够在ES ...

  8. C语言向文件写入内容并读取显示

    将学生信息(姓名.年龄.学号和平均分)写入文件,然后读取显示出来. 要求: 从控制台输入学生信息: 可以输入任意数目的学生信息: 文件每行存储一条学生信息,姓名.年龄.学号.平均分以tab(\t)为分 ...

  9. GeoServer学习笔记-2、基本使用(发布shapefile文件)

    一.shapefile文件 ESRI Shapefile(shp),或简称shapefile,是美国环境系统研究所公司(ESRI)开发的一种空间数据开放格式,用于描述几何体对象:点,折线与多边形,仅仅 ...

  10. Shapefile文件查看软件ShapeExplorer

    1. 概述 Shapefile 是一种 Esri 矢量数据存储格式,用于存储地理要素的位置.形状和属性. 其存储为一组相关文件,并包含一个要素类. 一般我们多使用ArcGIS.Global Mappe ...

最新文章

  1. YOLO-v4目标检测实时手机端实现
  2. 暴涨!BTC忠实粉丝转向BCH为BCH网络添砖加瓦
  3. Shader山下(二十一)多重变体(Multiple Variants)
  4. Spring 常犯的十大错误,打死都不要犯!
  5. bzoj3438: 小M的作物
  6. 在计算机的通信子网中 其操作方式有两种,全国自考计算机网技术模拟试卷(八)及答案.doc...
  7. 如何在工作组环境win 7远程管理Hyper-v server R2 SP1配置(三)
  8. [Quatsch]Quantum Or Optics
  9. 开放搜索助力提升趣店商城20%转化率
  10. Angularjs 中使用 layDate 日期控件
  11. 并发下,使用redis防止数据重复插入(数据库未对表字段设置唯一情况下)
  12. Bootstrap Wizard 多步表单控件
  13. 【情感分析】情感分析研究的新视野
  14. rtmp,rtsp,hLS区别
  15. FeiQ(飞秋)更新用户列表的原理
  16. 25匹赛马得前三名问题求解
  17. CentOS cp 复制隐藏文件提示 cp: cannot stat ?.xxx*?. No such file or directory
  18. 【超详细】output level 和 pull up/ pull down 的真正区别
  19. NRF52832-QFAA、NRF52840-QIAA性能区别-蓝牙智能手环穿戴
  20. 网易互娱2017实习生招聘游戏研发工程师在线笔试第二场(神奇的数)

热门文章

  1. windows开机启动方法
  2. 怎样访问ftp服务器文件夹权限,访问ftp服务器文件夹权限设置
  3. 电脑上最好的5个azw3阅读器
  4. 用c语言判断字符串为空,如何检查C字符串是否为空
  5. 创科视觉软件说明书_机器视觉入门指南
  6. 计算机excel表格教程高级筛选6,Excel高级筛选
  7. 聊聊量子计算机那些事
  8. 在用JAVA写一个简易CAD程序时的笔记
  9. 求职类App原型制作分享-Part-time Clouds
  10. 网络传输性能netperf测试方法和下载