Aan de slagGa gratis aan de slag

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

Cursus bekijken

Oefeninstructies

  • Roep het attribuut centroid aan op geo_state_pt en wijs het resultaat toe aan de kolom geometry
  • Maak een basiskaart van staatsgrenzen door de methode plot aan te roepen op geo_state; zet color op "tan" en edgecolor op "black"
  • Maak variabele ms (die je doorgeeft aan de parameter markersize) gelijk aan de vierkantswortel van de waarde van de kolom geo_state_pt["internet"] gedeeld door 5

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()
Code bewerken en uitvoeren