Restaurantele din Paris ca GeoDataFrame
În primul exercițiu de programare din acest capitol, am importat locațiile restaurantelor din Paris dintr-un fișier csv.
Pentru a activa funcționalitatea geospațială a GeoPandas, vrem să convertim DataFrame-ul pandas într-un GeoDataFrame. Acest lucru se poate face cu constructorul GeoDataFrame() și funcția geopandas.points_from_xy() — această conversie este deja realizată pentru tine.
Acum că avem un GeoDataFrame, toate funcționalitățile spațiale devin disponibile, inclusiv reprezentarea grafică a geometriilor. În acest exercițiu, vom crea aceeași figură ca în primul exercițiu cu setul de date despre restaurante, dar de data aceasta folosind metoda plot() a GeoDataFrame-ului.
Pandas a fost importat ca pd, GeoPandas ca geopandas, iar funcționalitatea pyplot din matplotlib ca plt.
Acest exercițiu face parte din cursul
Lucrul cu date geospațiale în Python
Instrucțiuni pentru exercițiu
- Inspectează primele rânduri ale GeoDataFrame-ului
restaurants. - Reprezentați-l grafic cu metoda
plot()a GeoDataFrame-ului. Valoarea returnată este un obiect axes din matplotlib: numește-lax. - Din nou, asigură-te că dimensiunea markerului este egală cu 1.
- Adaugă un strat de hartă de fundal folosind
contextily.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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()