我正在尝试使用Folium创建一个Choropleth贴图。我从官方的GIS shapefile中导出了伦敦自治市镇的GeoJSON文件。经过数小时的可能原因研究,我发现文件中的功能与另一个有效的GeoJSON文件的显示顺序不同,我认为这是未出现在地图上的原因。基本上,我的订单类似于
"features": [
"geometry": {...},
"properties": {...}, etc
和正在运行的GeoJSON具有
"features": [
"properties": {...},
"geometry": {...},
我的问题是如何更改功能的顺序或如何使用Folium进行渲染?
用于创建地图的代码如下:
london = r'london_simple.json' # geojson file
# create a plain London map
london_map = folium.Map(location=[51.5074, 0.1278], zoom_start=10)
london_map.choropleth(
geo_data = london,
data = dfl1,
columns = ['Area_name', 'GLA_Population_Estimate_2017'],
key_on='feature.properties.Counties_1',
fill_color = 'YlOrRd',
fill_opacity = 0.7,
line_opacity=0.2,
legend_name='Population size in London'
)
london_map
我正在IBM Watson上的Jupyter笔记本中工作,如果有什么不同的话。如果我使用geojson文件,则不会显示任何区域。如果我更改为其他文件,则它可以工作(只要我将地图坐标更改为多伦多([37.7749,-122.4194])。
我的代码不会产生任何错误,只是普通地图专注于伦敦,而没有区域区域。
您尝试过这个吗?
key_on='feature.properties.Counties_a'
我认为以E开头的代码应标识shapefile的相关部分。
伦敦的JSON文件似乎有一些问题,
搜索伦敦的替代Geojson,我找到了一个工作的here