python 数据分析之地图数据绘制

python 数据分析之地图数据绘制

1、根据历史的2023年GDP数据做地图分析

python 复制代码
import numpy as np
import matplotlib
import matplotlib.pyplot as plt
matplotlib.rcParams['font.family'] = 'SimHei'
import pandas as pd
import folium
from folium import Map
import geopandas as gpd
from shapely.geometry import Point
pd.set_option('display.unicode.east_asian_width',True)
# 使用lambda函数来定义跳过行的规则,这里跳过前三行中的第二行
skip_rows = lambda x: x in [0, 1]
data=pd.read_excel('2023.xlsx')
#data=pd.read_excel('人均GDP.xlsx', sheet_name='Sheet1',header=0,skiprows=2,index_col='地区')
data

2、获取地图文件

注意:这里面的provinces和data2个要保证行是一样的多的行数,且有关联的标题名NAME字段名一样

python 复制代码
provinces = gpd.read_file(r'D:\Python\jupyter\画图分析GPD\China_provinces.shp')

4、将2个集合通过空间方式合并

python 复制代码
merged_df=gpd.GeoDataFrame(pd.merge(provinces, data, on='NAME'), geometry=provinces.geometry, crs=provinces.crs)
#把2个DATAFrmae合集为一个,通过空间关系的方式连接

5、绘制地图

python 复制代码
m = folium.Map(location=[20, 110], zoom_start=5)
folium.Choropleth(
    #title="2023年全国GPD分布图",
    geo_data=merged_df.geometry,
    name="choropleth",
    data=merged_df['2023'],#数据显示的哪个列表的值
    columns=['NAME', '2023'],
    key_on="feature.id",#使用ID的方式进行关联
    fill_color='YlGn',#颜色模型YlGn,YlGnBu
    legend_name="亿元"#显示数字标题使用
).add_to(m)
m.save("province_distribution.html")#保存地图HTML文件

源码下载:

链接:https://download.csdn.net/download/weixin_43050480/90134847

相关推荐
~无忧花开~几秒前
CSS学习笔记(五):CSS媒体查询入门指南
开发语言·前端·css·学习·媒体
Blossom.118几秒前
把 AI“缝”进布里:生成式编织神经网络让布料自带摄像头
人工智能·python·单片机·深度学习·神经网络·目标检测·机器学习
kesteler2 分钟前
R-切割数据
开发语言·r语言
哞哞不熬夜9 分钟前
JavaEE--SpringIoC
java·开发语言·spring boot·spring·java-ee·maven
滑水滑成滑头10 分钟前
**点云处理:发散创新,探索前沿技术**随着科技的飞速发展,点云处理技术在计算机视觉、自动驾驶、虚拟现实等领域的应用愈发广
java·python·科技·计算机视觉·自动驾驶
newxtc13 分钟前
【猿辅导-注册安全分析报告-无验证方式导致安全隐患】
开发语言·selenium·安全·yolo·安全爆破
张人玉15 分钟前
c#WPF基础知识
开发语言·c#·wpf
gc_229938 分钟前
学习Python中Selenium模块的基本用法(19:操作下拉框)
python·selenium
我的xiaodoujiao1 小时前
使用 Python 语言 从 0 到 1 搭建完整 Web UI自动化测试学习系列 19--测试框架Pytest基础 3--前后置操作应用
python·学习·测试工具·pytest
std78791 小时前
Rust 与 Go – 比较以及每个如何满足您的需求
开发语言·golang·rust