三个坑:
- 居然不显示分层的颜色(heatmap)很坑啊,网上查了很多资料,发现新版的folium的geo_json换了方法成了choropleth
- 还有一个坑 feature.id 这里 feature必须是第一个参数。
- 最后一个坑
su_lt_two['Zip']=su_lt_two['Zip'].astype(str)
读取csv时,例如‘Zip’字段的类型必须与geojson的数据类型一样
下面是代码:
# python 2.7 folium 0.5.0
import folium
import pandas as pd
state_geo = r'us-states.json'
state_unemployment = r'US_Unemployment_Oct2012.csv'
state_data = pd.read_csv(state_unemployment)
state_data['State']=state_data['State'].astype(str)
m = folium.Map([43,-100], zoom_start=4)
m.choropleth(
geo_data=open('us-states.json').read(),
data=state_data,
columns=['State', 'Unemployment'],
key_on='feature.id',
fill_color='YlGn',
)
m.save('ss.html')
效果图:
附件: