À quelle distance se trouve le restaurant le plus proche ?
Nous souhaitons maintenant nous intéresser aux restaurants proches de la tour Eiffel. Pour les explorer, visualisons la tour Eiffel elle‑même ainsi que les restaurants situés dans un rayon de 1 km.
Pour cela, nous pouvons calculer la distance à la tour Eiffel pour chacun des restaurants. À partir de ce résultat, nous créons ensuite un masque qui vaut True si le restaurant est à moins de 1 km, et False sinon, puis nous l’utilisons pour filtrer le GeoDataFrame restaurants. Enfin, nous réalisons une visualisation de ce sous‑ensemble.
Le GeoDataFrame restaurants a été chargé et l’objet eiffel_tower créé. De plus, matplotlib, GeoPandas et contextily ont été importés.
Cet exercice fait partie du cours
Travailler avec des données géospatiales en Python
Instructions
- Calculez la distance à la tour Eiffel pour chaque restaurant et appelez le résultat
dist_eiffel. - Affichez la distance jusqu’au restaurant le plus proche (c’est le minimum de
dist_eiffel). - Sélectionnez les lignes du GeoDataFrame
restaurantsoù la distance à la tour Eiffel est inférieure à 1 km (notez que la distance est en mètres).
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# The distance from each restaurant to the Eiffel Tower
dist_eiffel = ____
# The distance to the closest restaurant
print(dist_eiffel.____)
# Filter the restaurants for closer than 1 km
restaurants_eiffel = ____
# Make a plot of the close-by restaurants
ax = restaurants_eiffel.plot()
geopandas.GeoSeries([eiffel_tower]).plot(ax=ax, color='red')
contextily.add_basemap(ax)
ax.set_axis_off()
plt.show()