#choropleth #folium
#choropleth #folium
Вопрос:
Я довольно новичок в кодировании, и мне нужно создать некоторый тип карты для отображения моих данных. У меня есть данные на листе Excel, показывающие список стран и число, показывающее количество определенных преступлений. Я хочу показать это на карте choropleth.
Я видел много разных способов закодировать это, но, похоже, не могу заставить ни один из них правильно считываться в данных. Нужно ли мне будет импортировать коды стран в мой df?
У меня есть карта мира с github, и я загрузил ее в формате raw на свой компьютер и в ноутбук jupyter.
Мой фрейм данных также загружен в виде листа Excel в jupyter notebook.
Какие первые шаги мне нужно предпринять, чтобы загрузить это на карту?
Это код, с которым я добился наибольшего успеха:
import pandas as pd
import folium
df = pd.read_excel('UK - Nationality and Type.xlsx')
state_geo = 'countries.json'
m1 = folium.Map(location=[55, 4], zoom_start=3)
m1.choropleth(
geo_data=state_geo,
data=df,
columns=['Claimed Nationality', 'Labour Exploitation'],
key_on='feature.id',
fill_color='YlGn',
fill_opacity=0.5,
line_opacity=0.2,
legend_name='h',
highlight=True
)
m1.save("my_map.html")`
Но я просто получаю большую карту мира, все в том же оттенке серого
Комментарии:
1. Привет, Сэм, какая версия folium у тебя есть? Также есть ли шанс, что вы могли бы опубликовать отрывок из
countries.json
? или, возможно, ссылка на него?2.
columns=['Claimed Nationality', 'Labour Exploitation'],
key_on='feature.id',
выполните ‘Требуемое гражданство’ и ‘feature.id Совпадает? Они должны.3. я не уверен, какая версия запущена — она предварительно загружена в моей университетской системе
4. Теперь я исправил ключ в коде, чтобы убедиться, что это соответствует json, и теперь у меня есть цветная карта, которая кажется правильной — есть ли способ добавить маркеры наведения, показывающие конкретный номер по отношению к этой стране?
5. также перед выполнением маркеров — похоже, что данные о стране, которые не отображаются в моем df, но находятся в файле json, окрашены, а не остаются пустыми — есть ли способ отображать только страны, указанные в моем df?