一、标记指定经纬度
读取数据
包含 经纬度 信息
import numpy as np
stations = pd.read_csv('../Stationid_list.csv',delimiter=',')
使用 folium 可视化
import folium
from folium import plugins
import webbrowser
_map = folium.Map(location=[stations['Latitude'].mean(), stations['Longitude'].mean()], zoom_start=10)
marker_cluster = plugins.MarkerCluster().add_to(_map)
for name,row in stations.iterrows():
# 由于原始数据没有值,所以只好每个点都赋一个值 1
folium.Marker([row["Latitude"], row["Longitude"]], popup="{0}:{1}".format(row["StationID"], 1)).add_to(marker_cluster)
display(_map) # display 直接在 jupyter notebook 中打开
# _map.save('_map.html')
# webbrowser.open('_map.html')
效果展示
截图软件:LICEcap
二、可视化各省指标
需要先下载好 bou2_4p.shp,中国.json
import geopandas as gp
mydata = pd.DataFrame({'省份':['北京市','上海市','江西省'],'指标':[1,5,10]})
china_map = gp.GeoDataFrame.from_file("bou2_4p/bou2_4p.shp", encoding = 'gbk')
China_map = folium.Map(location=[40,110], zoom_start=4)
China_map.choropleth(
geo_data=open('中国.json',encoding = 'utf-8').read(),
data = mydata,
columns = ['省份', '指标'],
key_on = 'feature.properties.name',
fill_color='YlGn',
fill_opacity=0.7,
line_opacity=0.2)
display(China_map)
参考
- https://yq.aliyun.com/articles/607980
- https://blog.csdn.net/qq_39004117/article/details/89371438