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

相关推荐
JouJz4 分钟前
Java基础系列:深入解析反射机制与代理模式及避坑指南
java·开发语言·代理模式
HelloGitHub9 分钟前
经过 10 亿级性能验证的隐私计算开源利器
python·开源·github
白羊不吃白菜21 分钟前
PAT乙级(1101 B是A的多少倍)C语言解析
c语言·开发语言
一号言安21 分钟前
牛客python蓝桥杯11-32(自用)
开发语言·python
六边形战士DONK21 分钟前
03_NLP常用的文本数据分析处理方法
人工智能·自然语言处理·数据分析
梦丶晓羽25 分钟前
自然语言处理:主题模型
人工智能·python·自然语言处理·lda·主题模型
鸽鸽程序猿29 分钟前
【JavaEE】SpringIoC与SpringDI
java·开发语言·java-ee
weixin_525936331 小时前
Python数据分析之机器学习基础
python·机器学习·数据分析
maybe啊1 小时前
js 使用 Web Workers 来实现一个精确的倒计时,即使ios手机锁屏或页面进入后台,倒计时也不会暂停。
开发语言·前端·javascript
apcipot_rain1 小时前
【密码学——基础理论与应用】李子臣编著 第三章 分组密码 课后习题
python·算法·密码学