2015-12-15 54 views
1

我正在嘗試使用folium創建一個choropleth地圖,下面是示例:https://pypi.python.org/pypi/folium。我們的目標是製作美國失業率的等值線圖,但是當我打開我的地圖時,美國各州不會有任何建議。Folium Choropleth映射示例中的問題

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

同樣在這裏..你找到解決辦法嗎? – user3368526

+1

你有兩個輸入json和csv文件嗎? –

回答

1

我認爲這個問題是列名不匹配:

1)數據= state_data有列[ '國家', '失業'] 2)如果你打開us-states.json,你會發現key_on ='feature.id'對應於'01','02'等等。

在folium key_on中假設匹配第一列數據,in這個案例'國家'。

但 '01', '02' ..doesn't符合 '國家' 列其中有 'AL', 'AK', 'AZ' ..

如果您能想出KEY_ON美國-states.json與'States'列匹配,我認爲它應該可以解決你的問題。

注:我假設我們-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