本系列文章是根据GeoPandas
官方文档翻译整理,学习任何一个Python第三方库,其官方文档都是最好的学习资料。相比网络搜索得到的一些资料,官方文档是权威的一手资料,其内容全面、准确可靠。通过官方文档入手,能够保证学习认知不会有大偏差。在学习完官方文档后,可以在寻找其他资料进一步学习。
点击“阅读原文”或者直接访问下方链接,查看翻译整理的“GeoPandas 0.12.2 中文文档”。
https://www.mizhushare.com/docs
-
可以通过百度网盘获取,需要在本地配置代码运行环境:
链接:https://pan.baidu.com/s/185Qs6RpVhyP2nm9VV39Ehw?pwd=mnsj
提取码:mnsj
-
前往GitHub详情页面,单击 code 按钮,选择Download ZIP选项:
https://github.com/returu/geopandas
GeoPandas
是一个开源的 Python
库,用于处理地理空间数据,它扩展了流行的 Pandas
库,允许使用熟悉的数据结构和方法来操作和分析地理数据。
GeoPandas
扩展了pandas
的数据类型以支持地理数据类型,如点、线和面,以及对应的属性数据。这允许操作和分析空间数据,例如计算点之间的距离,按区域聚合数据以及转换坐标系。
GeoPandas
还与其他用于地理空间数据分析的流行 Python
库集成,例如 Matplotlib
用于可视化,Fiona
用于读写地理空间文件格式,Shapely
用于执行几何操作以及Pyproj
用于投影坐标系转换。GeoPandas
已成为 Python
中处理地理空间数据的流行工具,在学术界和工业界都受到了广泛应用。GeoPandas
与其他地理信息系统 (GIS) 软件的兼容性也很高,如 QGIS、ArcGIS 和 Mapbox。官方推荐使用以下命令安装,该方式会自动安装对应的依赖包,而无须手动安装(因为都是国外源,因此该方法需要科学上网):
1conda install -c conda-forge geopandas
如果上述方式无法安装,可以使用pip或conda安装,但是在安装GeoPandas
之前需要先确保已经安装了Fiona
、GDAL
、pyproj
、Rtree
、Shapely
等依赖包。
可以前往以下网站下载相对应版本依赖包的whl
安装文件:
1https://www.lfd.uci.edu/~gohlke/pythonlibs/
安装完成后,可以通过以下命令查看当前GeoPandas
版本:
1>>> import geopandas as gpd
2>>> gpd.__version__
3'0.12.2'
GeoPandas
广泛应用于地理数据分析和可视化领域。以下是一些常见的应用示例:-
地图可视化:使用 GeoPandas
可以轻松地对地理数据进行可视化,如绘制点、线和面。 -
数据清理:使用 GeoPandas
可以清理和整理地理数据,以准备进一步的分析。 -
空间数据处理: GeoPandas
提供了一组强大的工具,用于对地理数据进行处理,如投影转换、空间索引、数据合并和分组等。 -
地理信息系统 (GIS
) 分析:GeoPandas
与其他GIS
软件的兼容性很高,因此可以用于各种GIS
分析,如距离计算、缓冲区分析、空间关系分析等。 -
地理数据科学: GeoPandas
可用于实现各种地理数据科学研究,如地理统计分析、空间模型和地理机器学习等。
这些只是 GeoPandas
的一些常见应用示例,它具有更多的功能,您可以根据需求自行发掘。
下面是一个简单的可视化示例(使用GeoPandas
自带的世界地图数据集):
1>>> world = geopandas.read_file(geopandas.datasets.get_path('naturalearth_lowres'))
2
3>>> world.head() # 查看数据前5行
4
5 pop_est ... geometry
60 889953.0 ... MULTIPOLYGON (((180.00000 -16.06713, 180.00000...
71 58005463.0 ... POLYGON ((33.90371 -0.95000, 34.07262 -1.05982...
82 603253.0 ... POLYGON ((-8.66559 27.65643, -8.66512 27.58948...
93 37589262.0 ... MULTIPOLYGON (((-122.84000 49.00000, -122.9742...
104 328239523.0 ... MULTIPOLYGON (((-122.84000 49.00000, -120.0000...
11
12[5 rows x 6 columns]
13
14# 绘图
15>>> world.plot()
可视化效果如下图所示:
本篇文章来源于微信公众号: 码农设计师