我很难为巴西州做choropleth map,我使用folium库做如下操作:
import folium
import json
with open('br-states.json') as json_data:
d = json.load(json_data)
m = folium.Map(
location=[-18.826592, -55.212558],
zoom_start=4,
tiles='OpenStreetMap')
m.choropleth(
geo_data=d,
name='choropleth',
data=new_data,
columns=['State', 'QTY'],
key_on='feature.id',
fill_color='YlGn',
fill_opacity=0.7,
line_opacity=0.2,
legend_name='Unemployment Rate (%)'
)
folium.LayerControl().add_to(m)
m我的数据名为new_data

我不知道是代码有问题,还是我的名为br-state的json文件有问题(可能与该文件的作者使用的坐标或其他什么有关)
我得到了地图,但是地图并没有变成全息地图。
任何建议都将受到高度赞赏。
发布于 2019-03-07 08:04:23
我正在使用这个JSON文件:https://github.com/datalivre/Conjunto-de-Dados/blob/master/br_states.json看看代码,它和你的有点不同。您不需要将JSON文件转换为字典。这是我得到的结果的图像。folium br_states
import folium
import pandas as pd
new_data = pd.read_excel('new_data.xlsx')
state_geo = 'br_states.json'
mapa = folium.Map(
location=[-15.77972, -47.92972],
zoom_start=3
)
folium.Choropleth(
geo_data=state_geo,
name='Estados QTY',
data=new_data,
columns=['State','QTY'],
key_on='feature.id',
fill_color='YlOrBr',
fill_opacity=0.7,
line_opacity=0.1,
legend_name='Insert legend'
).add_to(mapa)
folium.LayerControl().add_to(mapa)
mapa.save('index.html')
mapahttps://stackoverflow.com/questions/49470432
复制相似问题