Ich bin interessiert an der Erstellung von Choropleth Karte mit Python auf Kreisebene. Wenn ich meinen Code ausführe, ohne zu versuchen, Daten an ihn zu binden, bekomme ich die County-Zeilen schön eingezeichnet. Wenn ich jedoch versuche, meine Daten zu binden, bekomme ich KeyError: None.Python Folium Choropleth Karte KeyError: Keine
Aus meiner Suche sah es so aus, als ob dies daran liegt, dass Werte im GeoJson nicht mit den Werten in der Datendatei übereinstimmen ... aber ich ging manuell ein und überprüfte und habe die Daten bereits editiert damit es genau geht gleiche Anzahl von Zeilen und genau die gleichen Werte ... immer noch den gleichen Fehler. Sehr frustrierend :(
Mein Code:
import folium
from folium import plugins
from folium.plugins import Fullscreen
import pandas as pd
county_geo = 'Desktop\counties.json'
county_data = 'Desktop\fips.csv'
# Read into Dataframe, cast to string for consistency.
df = pd.read_csv(county_data, na_values=[' '])
df['FIPS'] = df['FIPS'].astype(str)
m = folium.Map(location=[48, -102], zoom_start=3)
m.choropleth(geo_path=county_geo,
data=df,
columns=['FIPS', 'Value'],
key_on='feature.properties.id',
fill_color='PuBu')
Fullscreen().add_to(m)
m
Und mein Fehler:
KeyError: Keine
Out [32]: folium.folium.Map bei 0x10231748
Jeder Ratschlag oder Beispielcode/Dateien, die für Sie auf Kreisebene arbeiten, wäre sehr willkommen!
EDIT:
Ich habe meinen eigenen Fehler gefunden.
key_on='feature.properties.id',
Sollte sein:
key_on='feature.id',