我正在尝试使用folium创建一个等值区域地图,遵循以下示例:https://pypi.python.org/pypi/folium。目标是制作美国失业率的等值线图,但是当我打开我的地图时,美国各州都没有阴影。任何建议?
import folium
import pandas as pd
state_geo = r'data/us-states.json'
state_unemployment = r'data/US_Unemployment_Oct2012.csv'
state_data = pd.read_csv(state_unemployment)
#Let Folium determine the scale
map = folium.Map(location=[48, -102], zoom_start=3)
map.geo_json(geo_path=state_geo, data=state_data,
columns=['State', 'Unemployment'],
key_on='feature.id',
fill_color='YlGn', fill_opacity=0.7, line_opacity=0.2,
legend_name='Unemployment Rate (%)')
map.create_map(path='us_states.html')
谢谢,
答案 0 :(得分:1)
我认为问题是列名不匹配:
1)data = state_data有列['州','失业'] 2)如果你打开us-states.json,你会发现key_on =' feature.id'对应于' 01',' 02'等等..
在folium中,key_on与第一列数据相匹配,在这种情况下为' State'。
但是' 01',' 02' ..不适合' State'有' AL',' AK',' AZ' ..
的专栏如果你能在us-states.json中找到匹配'状态'的key_on。列,我认为它应该可以解决你的问题。
注意:我假设us-states.json来自https://raw.githubusercontent.com/alignedleft/d3-book/master/chapter_12/us-states.json而US_Unemployment_Oct2012.csv来自https://raw.githubusercontent.com/python-visualization/folium/master/examples/US_Unemployment_Oct2012.csv