GeoJSON文件未使用Folium呈现

问题描述 投票:0回答:2

我正在尝试使用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])。

我的代码不会产生任何错误,只是普通地图专注于伦敦,而没有区域区域。

Link to working geojson

Link to my problematic geojson

python-3.x geojson folium choropleth
2个回答
0
投票

您尝试过这个吗?

key_on='feature.properties.Counties_a'

我认为以E开头的代码应标识shapefile的相关部分。


0
投票

伦敦的JSON文件似乎有一些问题,

  1. 坐标值错误。它们包含诸如[532946.0999999996,181894.90000000037]的值,而实际上应为[-0.042770,51.531530]。
  2. 似乎很少有值可以绘制县的多边形。

搜索伦敦的替代Geojson,我找到了一个工作的here

© www.soinside.com 2019 - 2024. All rights reserved.