大叶草/黑色国家

时间:2020-09-12 21:54:45

标签: python json python-3.x geojson folium

我正在尝试使用化叶模块可视化一些Covid-19数据(每个国家的Covid病例比率)。由于某些原因,地图上的一些国家/地区似乎是黑色的,例如美国,而我使用的是 fill_color =“ YlGn” 。这是什么问题?

import os
import folium
import pandas as pd

states = os.path.join('datas', 'countries.geo.json')

country_covid = os.path.join('datas', 'df.csv')
covid_data = pd.read_csv(country_covid, skiprows=0)

bins = list(covid_data['Cases'].quantile([0, 0.25, 0.5, 0.75, 1]))
m = folium.Map(location=[16, 34], zoom_start=5)

folium.Choropleth(
    geo_data=states,
    name="choropleth",
    data=covid_data,
    columns=['Country', 'Cases'],
    key_on='feature.properties.ADMIN',
    fill_color='YlGn',
    fill_opacity=0.7,
    line_opacity=0.2,
    legend_name='Covid-19 Rate (%)',
    bins=bins,
    reset=True
).add_to(m)

folium.LayerControl().add_to(m)

m.save(outfile="map1.html")

查看地图的屏幕截图: Image

2 个答案:

答案 0 :(得分:0)

一个国家为“黑色”时,实际上意味着该国家没有数据。

由于我假设您有美国的数据,因此应检查geojson中的国家代码和熊猫DataFrame中的国家代码是否相同。该错误最有可能出现在该国家/地区,因为密钥不同,因此无法在国家/地区数据和geojson之间建立连接。

如果您发布数据和geojson的例子,我可以为您提供更多帮助。

答案 1 :(得分:0)

所以答案是我必须在我的geojson文件中实际编辑国家/地区的名称,以便与数据框中的等效名称相同。