我想使用Folium库在Python中创建一个Choropleth映射。
这是数据集:
df_new_count2
审阅者国家/地区计数原始人数百分比
0希腊191 3352 0.056981
1比利时338 5991 0.056418
2德国429 7843 0.054698
这是我使用的代码:
world_map = folium.Map(location=[40, 0], zoom_start=1.5)
大叶草叶( geo_data ='https://s3-api.us-geo.objectstorage.softlayer.net/cf-courses-data/CognitiveClass/DV0101EN/labs/Data_Files/world_countries.json',
name='choropleth',
data=df_new_count2,
columns=['Reviewer Country','Percentage'],
key_on='feature.properties.name',
fill_color='YlOrRd',
fill_opacity=0.7,
line_opacity=0.2,
legend_name='Percentage of people'
).add_to(world_map)
folium.LayerControl().add_to(world_map)
world_map
地图正在显示,但所有内容均为黑色,颜色未显示。
有人知道这个问题可能是什么吗?预先感谢您的宝贵时间。
答案 0 :(得分:0)
您可以尝试:
import pandas as pd
import folium
# create dataframe
df_new_count2 = pd.DataFrame([['Greece', 0.056981], ['Belgium', 0.056418], ['Germany', 0.054698]], columns=['Reviewer Country','Percentage'])
df_new_count2
# plot map
world_map = folium.Map(location=[40, 0], zoom_start=1.5)
folium.Choropleth(geo_data='https://s3-api.us-geo.objectstorage.softlayer.net/cf-courses-data/CognitiveClass/DV0101EN/labs/Data_Files/world_countries.json', name='choropleth',
data=df_new_count2,
columns=['Reviewer Country','Percentage'],
key_on='feature.properties.name',
fill_color='YlOrRd',
fill_opacity=0.7,
line_opacity=0.2,
legend_name='Percentage of people'
).add_to(world_map)
folium.LayerControl().add_to(world_map)
world_map
它只为数据框中可用于数据的国家/地区着色。 您可以验证数据框是否包含所选国家/地区的数据吗?