Файл Geo JSON не отображается с помощью Folium - PullRequest
0 голосов
/ 13 января 2020

Я пытаюсь создать карту со списком, используя Folium. Я экспортировал файл Geo JSON для лондонских районов из официального шейп-файла ГИС. После нескольких часов изучения возможных причин я заметил в своем файле, что объекты отображаются в другом порядке по сравнению с другим работающим файлом Geo JSON, который, как я полагаю, является причиной того, что он не появился на карте. По сути, мой порядок выглядит примерно так:

"features": [ 
    "geometry": {...}, 
    "properties": {...}, etc  

, а рабочий Geo JSON имеет

"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

Я работаю в блокноте Jupyter на IBM Watson, если это что-то меняет. Если я использую файл geo json, области хороплета не отображаются. Если я переключаюсь на другой файл, он работает (при условии, что я изменяю координаты карты на Торонто ([37.7749, -122.4194]).

Мой код не генерирует никаких ошибок, только простая карта, ориентированная на Лондон без областей хороплета.

Ссылка на рабочий гео json

Ссылка на мою проблему c geo json

Ответы [ 2 ]

0 голосов
/ 24 января 2020

Кажется, есть несколько проблем с файлом JSON для Лондона-

  1. Значения координат неверны. Они содержат значения, такие как [532946.0999999996, 181894.90000000037], когда в действительности это должно быть что-то вроде [-0.042770, 51.531530].
  2. Кажется, что очень мало значений для рисования многоугольника округов.

Поиск альтернативного Geo json для Лондона, я нашел рабочий здесь

0 голосов
/ 22 января 2020

Вы пробовали это вместо этого?

key_on='feature.properties.Counties_a'

Я думаю, что код, начинающийся с E, должен идентифицировать соответствующую часть шейп-файла.

...