shapefile文件(shp)读取
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]
解析后一行属性的结果:
<type 'list'>: [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_stringtpath = '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
shapefile文件(shp)读取相关推荐
- ncl 添加点shp文件_一:python读取shapefile文件
使用geopandas读取shapefile格式的矢量文件 包括shapefile文件的读取.修改.保存 import geopandas as gpd # 导入包 segpath = r" ...
- Java使用GeoTools轻松读取shapefile文件内容
日常GIS开发中难免会将一些shapefile文件数据读取存入数据库中,很多人第一想到的就是使用GeoTools操作和显示地图的开源Java 代码库. 生活捉弄人,因为项目需要对于从来没有做过GIS相 ...
- .shp文件的存储结构是怎样的?底层读取shapefile文件
.shp文件的存储结构是怎样的?底层读取shapefile文件 基础知识 shp的存储结构 python 字节流读取Shp文件 基础知识 大家都比较熟悉shp文件,它是GIS软件可以读取的矢量文件.但 ...
- C#不用ArcEngine,生成Shp文件(五)---------读取.shx文件和生成.shx文件
这一篇来写一下.shx文件的读取跟生成.测试数据下载地址为:http://download.csdn.net/detail/gis0911178/9650967 在第一篇时候有介绍. 索引文件(.sh ...
- shp文件中polyline是什么_shp文件的读取
首先了解一下shp文件的一些简单知识 Shapefile文件是美国环境系统研究所(ESRI)所研制的GIS文件系统格式文件,是工业标准的矢量数据文件. Shapefile将空间特征表中的非拓扑几何对象 ...
- SHP(shapefile)文件详细格式介绍
shape文件由ESRI开发,一个ESRI(Environmental Systems Research Institute)的shape文件包括一个主文件,一个索引文件,和一个dBASE表.其中主文 ...
- Shapefile文件读取-文件头
1 介绍 在Shapefile文件格式介绍一文中我们介绍了shapefile文件的结构组成,本文主要介绍如何读取shapefile文件头部分,使用的语言是c++. 2 文件头结构 Shapefile文 ...
- shapefile java_JAVA读取SHAPEFILE文件的源代码.pdf
java读取ShapeFile文件的源代码 时间:2010-04-20 22:20来源: 作者:giser 点击: 70次 java读取ShapeFile文件的源代码 java读取ShapeFile文 ...
- C#读取SHAPEFILE文件总结0--大纲
SHAPEFILE文件是地图文件的祖宗,学习怎么读取当然对学习很有裨益.在网上找了几篇资料,主要是百度文库里面看到个C#读取shapefile的DOC,就跟着抄代码学习一下. 现在刚好把point类型 ...
最新文章
- python3.7.2下载-Python 3.7.2和3.6.8版本发布下载,附更新说明
- Android应用开发-快速入门
- 关系数据 规范化的理解
- LOJ#2542. 「PKUWC2018」随机游走
- python灰度图像为什么显示成彩色的_python opencv image 怎么变成伪彩色
- 深入了解Oracle数据字典升级脚本catupgrd.sql调用过程
- (附源码)计算机毕业设计SSM餐厅订餐系统
- 使用ffmpeg转换webm格式到MP4格式
- 视频自动生成字幕(免费版)
- ardl模型stata命令_计量经济学《手把手教你EViews软件操作教程与案例分析》
- 使用数字滤波器处理音频噪声(附Matlab程序)
- js用blob下载pdf文件打开后中文乱码
- a1708硬盘转接口_macbook pro2017 a1708转接卡更换大容量硬盘,Apple/苹果笔记本电脑_好文分享_优购 - 荐优,购适...
- 怎么上传云班课的计算机作业,云班课作业怎么提交_作业提交方法_咖绿茵手游站...
- 接口测试常见面试题(含答案)
- 微信支付 postman_微信刷脸支付补贴政策有哪些?
- linux安装GPU显卡驱动、CUDA和cuDNN库
- 免费开源的箱包制造行业ERP管理系统介绍
- 人工智能-强化学习-算法:Critic 【用于评价一个 Actor/Policy π】--> Q-Learning【用于训练出来一个最优 Actor/Policy π,擅长处理离散型 actions】
- 仿乐享微信源码分享,微信管家升级版最新版本