如何使用Python处理地理数据?geopandas入门实践

絕刀狂花
发布: 2025-07-16 15:18:02
原创
324人浏览过

geopandas能轻松处理地理数据,安装后即可读取shapefile或geojson文件,使用gpd.read_file()加载数据并查看结构与坐标系;通过gdf.plot()实现地图可视化,可设置颜色映射与图形比例;常见操作包括1.用gdf.to_crs()转换坐标系统,2.用.cx或.within()按位置筛选数据,3.用pd.concat()合并多个geodataframe,注意统一crs。新手可从基础入手逐步掌握其强大功能。

如何使用Python处理地理数据?geopandas入门实践

处理地理数据其实没那么神秘,用 Python 的 GeoPandas 库就能轻松上手。它基于 Pandas 扩展而来,专门用来处理带有空间信息的数据,比如地图、坐标点、多边形区域等。如果你已经熟悉 Pandas,那学 GeoPandas 会非常顺手。

如何使用Python处理地理数据?geopandas入门实践

下面从几个常见需求出发,带你快速入门。


安装与基础准备

GeoPandas 不是默认安装的库,需要单独安装。推荐使用 pip 或 conda:

立即学习Python免费学习笔记(深入)”;

如何使用Python处理地理数据?geopandas入门实践
  • pip install geopandas
  • conda install -c conda-forge geopandas

安装完成后,导入常用模块:

import geopandas as gpd
import matplotlib.pyplot as plt
登录后复制

GeoPandas 主要处理的是 GeoDataFrame,它和普通的 DataFrame 类似,只不过多了一个 geometry 列,里面存放的就是地理信息(如点、线、面)。

如何使用Python处理地理数据?geopandas入门实践

加载地理数据:读取 Shapefile 或 GeoJSON

最常见的地理数据格式有 ShapefileGeoJSON。GeoPandas 对这两种格式支持非常好,可以直接读取:

# 读取 Shapefile 文件
gdf = gpd.read_file('your_shapefile.shp')

# 读取 GeoJSON 文件
gdf = gpd.read_file('your_geojson.geojson')
登录后复制

注意:

  • Shapefile 通常不是一个文件,而是一组文件(.shp、.shx、.dbf 等),必须放在同一目录下。
  • GeoJSON 是纯文本格式,适合网络传输,也更容易查看内容。

读取后可以用 gdf.head() 查看结构,用 gdf.crs 查看坐标系信息。

钉钉 AI 助理
钉钉 AI 助理

钉钉AI助理汇集了钉钉AI产品能力,帮助企业迈入智能新时代。

钉钉 AI 助理 21
查看详情 钉钉 AI 助理

地图可视化:画出你的第一张地理图

GeoPandas 内置了简单的绘图功能,依赖 matplotlib。比如:

gdf.plot()
plt.show()
登录后复制

如果你想更精细控制样式,可以加参数:

gdf.plot(column='population', legend=True, cmap='OrRd')
登录后复制

这样就可以根据某一列(比如人口)进行颜色映射,做出热力图效果。

小技巧:如果地图显示太小或者比例不对,可以用 figsize=(10, 8) 控制大小,或者用 ax.set_aspect('equal') 设置比例一致。

常见操作:坐标转换、筛选、合并

1. 坐标系统转换(CRS)

不同数据可能使用不同的坐标系统,统一坐标系很关键。例如转为 WGS84(经纬度):

gdf = gdf.to_crs(epsg=4326)
登录后复制

2. 按位置筛选

你可以用 .cx.within() 来筛选某个范围内的数据:

# 筛选 x 在 100~110,y 在 30~40 范围内的记录
subset = gdf.cx[100:110, 30:40]
登录后复制

3. 合并多个地理数据

如果有两个 GeoDataFrame,想拼在一起:

combined = gpd.GeoDataFrame(pd.concat([gdf1, gdf2], ignore_index=True))
登录后复制

不过要注意两个数据的 CRS 是否一致,否则得先统一。


基本上就这些内容。GeoPandas 上手不难,但有很多细节需要注意,比如坐标系统、投影方式、几何类型等。新手可以从读取数据、画图、简单分析开始练起,慢慢就会发现它的强大之处了。

以上就是如何使用Python处理地理数据?geopandas入门实践的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号