Aan de slagGa gratis aan de slag

De Parijse restaurants als GeoDataFrame

In de eerste codeoefening van dit hoofdstuk hebben we de locaties van de restaurants in Parijs uit een csv-bestand ingeladen. Om de georuimtelijke functionaliteit van GeoPandas te kunnen gebruiken, willen we de pandas-DataFrame omzetten naar een GeoDataFrame. Dat kan met de GeoDataFrame()-constructor en de functie geopandas.points_from_xy(), en is al voor je gedaan.

Nu we een GeoDataFrame hebben, is alle ruimtelijke functionaliteit beschikbaar, zoals het plotten van de geometrieën. In deze oefening maken we dezelfde figuur als in de eerste oefening met de restaurants-gegevensset, maar nu met de plot()-methode van het GeoDataFrame.

Pandas is geïmporteerd als pd, GeoPandas als geopandas en de pyplot-functionaliteit van matplotlib als plt.

Deze oefening maakt deel uit van de cursus

Werken met georuimtelijke data in Python

Cursus bekijken

Oefeninstructies

  • Inspecteer de eerste rijen van het restaurants-GeoDataFrame.
  • Plot het met de plot()-methode van het GeoDataFrame. De returnwaarde is een matplotlib-axesobject: noem dit ax.
  • Zorg er opnieuw voor dat de markergrootte gelijk is aan 1.
  • Voeg een basemaplaag toe met contextily.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Read the restaurants csv file into a DataFrame
df = pd.read_csv("paris_restaurants.csv")

# Convert it to a GeoDataFrame
restaurants = geopandas.GeoDataFrame(df, geometry=geopandas.points_from_xy(df.x, df.y))

# Inspect the first rows of the restaurants GeoDataFrame
print(restaurants.____)

# Make a plot of the restaurants
ax = restaurants.____
import contextily
contextily.____(____)
plt.show()
Code bewerken en uitvoeren