Карта Choropleth не показывает изменение цвета на выходе - PullRequest
1 голос
/ 08 апреля 2019

Я не получаю никакого изменения цвета в моей выходной карте, даже после того, как хороплет связан с geo_data , а фрейм данных связан с параметром данных в хороплете метод.

Я правильно указал параметр "key_on" и параметр "columns" . Я удалил все значения NULL из кадра данных.

import pandas as pd
from pandas import read_csv
import folium
import os
import webbrowser

crimes = read_csv('Dataframe.csv',error_bad_lines=False)

vis = os.path.join('Community_Areas.geojson')
m = folium.Map(location = [41.878113, -87.629799], zoom_start = 10, tiles = "cartodbpositron")
m.choropleth(geo_data=vis, data = crimes, columns = ['Community Area', 'count'], fill_color = 'YlGn', key_on = 'feature.properties.area_numbe')
folium.LayerControl().add_to(m)
m.save('map.html')
webbrowser.open(filepath)

Я ожидал цветную карту хороплета, но фактический результат был полностью серым. Я добавлю код, данные, вывод по ссылке ниже.

Код ссылки: https://github.com/rahul0070/Stackoverflow_question_data

1 Ответ

1 голос
/ 09 апреля 2019

После прочтения данных я обнаружил, что вы не преобразовали тип данных столбца области сообщества в строковый тип, поскольку файл geojson содержит ключ в виде строки.Таким образом, тип данных ключа и столбца должен совпадать.

Вот полное решение для вашего ответа

# importing libraries
import pandas as pd
from pandas import read_csv
import folium
import os
import webbrowser
# read the data
crimes = read_csv('Dataframe.csv',error_bad_lines=False)
# convert float to int then to string
crimes['Community Area'] = crimes['Community Area'].astype('int').astype('str')
# choropleth map
vis = 'Community_Areas.geojson'
m = folium.Map(location = [41.878113, -87.629799], zoom_start = 10, tiles = "cartodbpositron")
m.choropleth(geo_data=vis, data = crimes, columns = ['Community Area', 'count'], fill_color = 'YlGn', key_on = 'feature.properties.area_num_1')
folium.LayerControl().add_to(m)
m.save('map.html')
webbrowser.open('map.html')

Пожалуйста, прокомментируйте, если вы затрудняетесь понять какую-либо часть кода.Для параметра key_on вы также можете попробовать feature.properties.area_numbe

...