2017-08-08 40 views
0

我正在嘗試使用自定義topoJSON文件和數據框來顯示葉子熱圖。該地圖用均勻陰影的等值線代替預期的熱圖生成。Folium TopoJSON熱圖不按預期方式填充

繼承人的代碼片段我使用(不包括基本進口,建立數據幀的):

cols = ['dma', 'values'] 

center_us_long_lat = [39.50, -98.35] 

topo_path = r'../../data/designated_marketing_areas_us_topo.json' 

us_map = folium.Map(location=center_us_long_lat,attr='dma_code', 
        tiles='Mapbox Bright', zoom_start=4, min_zoom=4) 

us_map.choropleth(geo_path=topo_path, topojson='objects.nielsen_dma', 
        data=df, columns=cols, 
        fill_opacity=0.7, 
        key_on="feature.properties.dma", 
        line_color='white', fill_color='YlOrRd', 
        highlight=True 
       ) 

輸出看起來是這樣的:

Output map, not as expected

我試着將key_on參數調整爲feature.dma,但這會導致相同的輸出。

作爲參考這裏的df數據的樣本:

In[1]: 
df.head(): 

Out[1]: 
    dma values 
1 501 16.749 
2 740 8.858 
3 807 15.790 
4 511 15.315 
5 798 8.425 

的topojson可以發現here

我在做什麼錯?謝謝!

回答

3

我知道這可能聽起來很愚蠢,但我總是發現這些問題歸結爲不匹配的數據類型或領先/滯後空間。祝你好運!

+0

原來它需要是一個特定類型的'int' - 謝謝Scott! –