Proiettare un punto
Nel capitolo precedente abbiamo lavorato con la posizione della Torre Eiffel. Anche qui ti forniamo le coordinate in un sistema di coordinate proiettate, così puoi, per esempio, calcolare le distanze. Torniamo a questo luogo iconico ed esprimiamo la sua posizione in coordinate geografiche: 48°51′29.6″N, 2°17′40.2″E. Oppure, in decimali: latitudine 48.8584 e longitudine 2.2945.
Gli oggetti geometrici di Shapely non hanno alcuna nozione di CRS e quindi non possono essere convertiti direttamente in un altro CRS. Per questo useremo GeoPandas per trasformare il punto della Torre Eiffel in un CRS alternativo. Metteremo il singolo punto in una GeoSeries, useremo il metodo to_crs() e poi estrarremo di nuovo il punto.
GeoPandas è già importato.
Questo esercizio fa parte del corso
Lavorare con i dati geospaziali in Python
Istruzioni dell'esercizio
- Crea un oggetto punto di Shapely con le coordinate della Torre Eiffel e assegnalo a una variabile chiamata
eiffel_tower. - Crea una GeoSeries (chiamata
s_eiffel_tower) con la Torre Eiffel come unico elemento e specifica il CRS come EPSG:4326. - Converte
s_eiffel_towera EPSG:2154 e chiama il risultatos_eiffel_tower_projected
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# Construct a Point object for the Eiffel Tower
from shapely.geometry import Point
eiffel_tower = ____
# Put the point in a GeoSeries with the correct CRS
s_eiffel_tower = geopandas.GeoSeries([____], crs={'init': '____'})
# Convert to other CRS
s_eiffel_tower_projected = s_eiffel_tower.____
# Print the projected point
print(s_eiffel_tower_projected)