悉尼等值线图

Choropleth Map of Sydney

我正在尝试创建 Choropleth 地图,但它没有显示。

# Sydney latitude and longitude values
latitude = -33.892319
longitude = 151.146167

sydney_geo = r'suburb-2-nsw.json' # geojson file

sydney_map = folium.Map(location=[latitude, longitude], zoom_start=8, tiles='Mapbox Bright')

    sydney_map.choropleth(
    geo_data=sydney_geo,
    data=df_cities,
    columns=['city', 'count'],
    key_on='feature.properties.nsw_loca_2',
    fill_color='YlOrRd', 
    fill_opacity=0.7, 
    line_opacity=0.2,
    legend_name=''
)

# display map
sydney_map

我正在使用这个 geojson 文件 - https://raw.githubusercontent.com/tonywr71/GeoJson-Data/master/suburb-2-nsw.geojson

这就是数据框 (df_cities) 的样子 -

我只是得到空白输出 -

您确定您使用的是正确的 geojson 文件扩展名吗?

使用此代码,它有效:

import folium
import pandas as pd

# Sydney latitude and longitude values
latitude = -33.892319
longitude = 151.146167
m = folium.Map(location=[latitude, longitude],
               zoom_start=3,
               control_scale=True)

sydney_geo = r'suburb-2-nsw.geojson' # geojson file

df_cities = pd.DataFrame({'Unnamed':[2413, 815],
                          'city':['SIDNEY', 'DUBBO'],
                          'count':[593, 568]})

folium.Choropleth(geo_data=sydney_geo,
                  name='choropleth',
                  data=df_cities,
                  columns=['city', 'count'],
                  key_on='feature.properties.nsw_loca_2',
                  fill_color='YlOrRd',
                  fill_opacity=0.7,
                  line_opacity=0.2,
                  legend_name='In Debt').add_to(m)

folium.LayerControl().add_to(m)
m