Proportionele symboolkaart van huishoudens met internet
Om een variabele met ruwe telling te visualiseren, kun je een proportionele symbool-kaart gebruiken, waarbij markergroottes evenredig zijn aan de datawaarde die je in kaart brengt. In deze oefening vind je het zwaartepunt (centroid) van elke staat, maak je een basiskaart van staten en plaats je bij elk zwaartepunt een cirkel waarvan de grootte is gebaseerd op het aantal huishoudens met internettoegang.
De oppervlakte van elke marker moet evenredig zijn aan de datawaarde. Omdat markergroottes als diameter worden opgegeven, moet je de vierkantswortel van de kolomwaarde nemen. Markers kunnen te groot of te klein ogen. In deze oefening deel je de markergrootte door 5—dat is een esthetische keuze.
geopandas is geïmporteerd met de gebruikelijke alias en de functie sqrt is geïmporteerd uit numpy.
De GeoDataFrame geo_state is geladen.
Deze oefening maakt deel uit van de cursus
US Census-gegevens analyseren in Python
Oefeninstructies
- Roep het attribuut
centroidaan opgeo_state_pten wijs het resultaat toe aan de kolomgeometry - Maak een basiskaart van staatsgrenzen door de methode
plotaan te roepen opgeo_state; zetcolorop"tan"enedgecolorop"black" - Maak variabele
ms(die je doorgeeft aan de parametermarkersize) gelijk aan de vierkantswortel van de waarde van de kolomgeo_state_pt["internet"]gedeeld door5
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Create point GeoDataFrame at centroid of states
geo_state_pt = geo_state.copy()
geo_state_pt["geometry"] = ____
# Set basemap and create variable for markersize
basemap = ____
ms = ____
# Plot proportional symbols on top of basemap
geo_state_pt.plot(ax = basemap, markersize = ms, color = "lightgray", edgecolor = "darkgray")
plt.show()