ChinaAdminDivisonSHP实战:使用Python处理四级行政区划数据完整教程
ChinaAdminDivisonSHP实战:使用Python处理四级行政区划数据完整教程
ChinaAdminDivisonSHP是一个提供中国行政区划矢量数据的开源项目,包含国家、省/直辖市、市、区/县四级行政区划的ESRI Shapefile格式文件。本教程将带你快速掌握如何使用Python读取、处理和可视化这些行政区划数据,轻松上手地理信息分析。
准备工作:获取行政区划数据
首先需要获取项目数据,通过以下命令克隆仓库:
git clone https://gitcode.com/gh_mirrors/ch/ChinaAdminDivisonSHP
项目结构清晰,四级行政区划数据分别存放在以下目录中:
- 国家级别:
Country/ - 省级:
Province/ - 市级:
City/ - 区/县级:
District/
每个目录下都包含完整的Shapefile文件集合(.cpg, .dbf, .prj, .shp, .shx),满足专业地理信息系统的使用需求。
环境配置:安装必要的Python库
处理Shapefile需要用到几个关键库,使用pip安装:
pip install geopandas matplotlib
- geopandas:扩展pandas功能,专为地理空间数据设计
- matplotlib:用于数据可视化
数据加载:读取四级行政区划数据
使用geopandas可以轻松读取Shapefile数据。以下是加载省级行政区划数据的示例代码:
import geopandas as gpd
# 读取省级行政区划数据
province_data = gpd.read_file('Province/province.shp')
# 查看数据基本信息
print(province_data.info())
print(province_data.head())
四级行政区划数据展示
项目提供了四个级别的行政区划地图,从宏观到微观展示中国的行政区域划分:
国家级行政区划
国家级数据展示了中国的整体轮廓,存储在Country/country.shp文件中,适合作为地图底图使用。
省级行政区划
省级数据包含34个省级行政区(省、自治区、直辖市、特别行政区),存储在Province/province.shp文件中,是区域分析的常用数据粒度。
市级行政区划
市级数据覆盖了全国所有地级市,存储在City/city.shp文件中,适合中等尺度的地理空间分析。
区/县级行政区划
区/县级数据提供了最精细的行政单元划分,存储在District/district.shp文件中,适用于需要详细地理信息的应用场景。
数据处理:常用操作示例
1. 筛选特定区域数据
例如,筛选出广东省的行政区划数据:
guangdong = province_data[province_data['NAME'] == '广东省']
guangdong.plot()
2. 空间查询
查找与某个区域相邻的行政区:
# 假设我们已经有了广东省的数据guangdong
neighbors = province_data[province_data.geometry.touches(guangdong.geometry.iloc[0])]
3. 属性统计
统计各省份的面积:
# 确保数据使用正确的投影坐标系
province_data = province_data.to_crs(epsg=32649)
province_data['area_km2'] = province_data.area / 1000000
print(province_data[['NAME', 'area_km2']].sort_values('area_km2', ascending=False))
数据可视化:创建行政区划地图
使用matplotlib结合geopandas可以创建精美的行政区划地图:
import matplotlib.pyplot as plt
# 创建一个图形
fig, ax = plt.subplots(1, 1, figsize=(15, 15))
# 绘制省级行政区划
province_data.plot(ax=ax, color='white', edgecolor='black')
# 添加标题
plt.title('中国省级行政区划图', fontsize=20)
# 移除坐标轴
ax.axis('off')
# 显示图形
plt.show()
应用场景:行政区划数据的价值
中国行政区划数据在多个领域有重要应用:
- 商业分析:市场区域划分、零售网点布局
- 公共卫生:疾病传播分析、医疗资源分配
- 城市规划:基础设施建设规划、人口密度分析
- 环境保护:生态保护区划分、环境监测
- 应急管理:灾害响应区域划分、资源调配
总结:快速掌握行政区划数据处理
通过本教程,你已经了解了如何使用Python和ChinaAdminDivisonSHP项目处理中国行政区划数据。从数据获取、环境配置到数据加载、处理和可视化,完整的流程让你能够快速上手地理空间数据分析。
项目提供的四级行政区划数据满足了不同尺度的分析需求,无论是宏观的国家层面分析,还是微观的区县级研究,都能找到合适的数据。结合geopandas等强大的Python库,你可以轻松开展各种地理空间分析任务。
现在就开始你的地理信息分析之旅吧!利用ChinaAdminDivisonSHP提供的高质量行政区划数据,探索地理空间数据的无限可能。
更多推荐
所有评论(0)