Python 用小叶制作一张乔洛佩斯地图
我做这张choroepth地图有问题。区域是正确的,我得到的数字是正确的,但它用相同的颜色填充我的区域。我的假设是我把钥匙弄错了。我的代码基于本教程: 代码:Python 用小叶制作一张乔洛佩斯地图,python,choropleth,folium,Python,Choropleth,Folium,我做这张choroepth地图有问题。区域是正确的,我得到的数字是正确的,但它用相同的颜色填充我的区域。我的假设是我把钥匙弄错了。我的代码基于本教程: 代码: key_on参数需要GeoJSON数据中链接到数值数据的字段的名称。在您的代码段中,它被设置为None,因此无法工作。在本教程中,他们使用key\u on='feature.properties.DISTRICT' 这意味着在GeoJSON数据中,每个功能都有一个名为“DISTRICT”的属性,我假设该属性包含一个DISTRICT的名称。
key_on
参数需要GeoJSON数据中链接到数值数据的字段的名称。在您的代码段中,它被设置为None
,因此无法工作。在本教程中,他们使用key\u on='feature.properties.DISTRICT'
这意味着在GeoJSON数据中,每个功能都有一个名为“DISTRICT”的属性,我假设该属性包含一个DISTRICT的名称。然后,在数据帧中有一个名为“District”的列,其中的字符串与GeoJSON“District”字段中的值相匹配。如果存在匹配,“数字”列中的值将用于确定颜色
[district_geo = r'C:/1/sfpddists.geojson'
SF = (37.783087441092704, -122.46120747577555)
crimedata2 = pd.DataFrame(df\['Police District'\].value_counts().astype(float))
crimedata2.to_json('crimeagg.json')
crimedata2 = crimedata2.reset_index()
crimedata2.columns = \['District', 'Number'\]
m = folium.Map(location=SF, zoom_start=12)
folium.GeoJson(
district_geo,
name='geojson'
).add_to(m)
m.choropleth(geo_data=r'C:/1/sfpddists.geojson', data=crimedata2,
columns=\['District', 'Number'\],
key_on=None,
fill_color = 'PuBu',
fill_opacity = 0.7,
line_opacity = 0.2,
highlight=True,
legend_name = 'Number of incidents per district')
m][1]