我正在基于19个COVID案例的数据创建美国的热图。为此,我正在使用大叶草和大熊猫。这是link for the data
以及下面使用的代码。
colormap = cm.linear.YlGnBu_09.to_step(data=merged_data_cases['cases'],
method='quant', quantiles=[0,0.1,0.75,0.9,0.98,1]
usa_map = folium.Map(location=[48, -102], zoom_start=3, tiles=None)
folium.TileLayer('CartoDB positron',name="Light Map",control=False).add_to(usa_map)
colormap.caption = 'Confirmed Cases'
style_function = lambda x: {"weight":0.5,
'color':'black',
'fillColor':colormap(x['properties']['cases']),
'fillOpacity':0.75}
highlight_function = lambda x: {'fillColor': '#000000',
'color':'#000000',
'fillOpacity': 0.50,
'weight': 0.1}
interactive = folium.features.GeoJson(
merged_data_cases,
style_function=style_function,
control=False,
highlight_function=highlight_function,
tooltip=folium.features.GeoJsonTooltip(
fields=['Name','cases'],
aliases=['State: ','Confirmed Cases: '],
style=("background-color: white; color: #333333; font-family: arial; font-size: 12px; padding: 10px;"),
sticky = True
)
)
colormap.add_to(usa_map)
usa_map.add_child(interactive)
usa_map
运行代码时,出现以下错误。
AssertionError: The field Name is not available in the data. Choose from: ('NAME', 'STATE', 'cases').
我浏览了许多文章,博客和文档,但仍然无法弄清我的错误。有人可以指出我在这里做错了吗?我相信该错误是由于style_function参数引起的。
答案 0 :(得分:1)
似乎您应该在name
中用大写字母NAME
写fields=['Name','cases']
,因为错误消息中的可用字段表示为
名称,州,案件