1

我正在尝试使用自定义的 topoJSON 文件和数据框来显示一个 folium choropleth 热图。该地图使用均匀着色的等值线而不是预期的热图生成。

这是我正在使用的一段代码(不包括基本导入、数据框的创建):

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
                 )

输出如下所示:

输出图,不如预期

我尝试将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 可以在这里找到

我究竟做错了什么?谢谢!

4

1 回答 1

4

我知道这可能听起来很傻,但我总是发现这些问题归结为不匹配的数据类型或前导/滞后空间。祝你好运!

于 2017-08-09T22:31:17.637 回答