Operazioni Spaziali di Base
Scorri per mostrare il menu
Lavorare con i dati geospaziali spesso inizia con la capacità di filtrare, selezionare e visualizzare elementi in base ai loro attributi o proprietà spaziali. Utilizzando la libreria geopandas, è possibile eseguire queste operazioni spaziali di base in modo efficiente. Filtrare consente di concentrarsi su elementi di interesse all'interno di un dataset più ampio, mentre la visualizzazione aiuta a interpretare visivamente i pattern e le relazioni spaziali.
Per filtrare i dati spaziali, si utilizzano comunemente boolean indexing e l'accessor .loc in geopandas. Questo permette di selezionare le righe che soddisfano criteri specifici, come tutti gli elementi con un determinato valore di attributo.
12345678910111213141516171819202122import geopandas as gpd import matplotlib.pyplot as plt # 1. Load the dataset using a direct URL to the public Natural Earth GeoJSON world_url = "https://raw.githubusercontent.com/nvkelso/natural-earth-vector/master/geojson/ne_110m_admin_0_countries.geojson" world = gpd.read_file(world_url) # 2. Filter: Select only countries in South America south_america = world[world['CONTINENT'] == 'South America'] # 3. Plotting ax = world.plot(color='lightgray', edgecolor='white', figsize=(10, 6)) # Overlay South American countries in green south_america.plot(ax=ax, color='forestgreen', edgecolor='black') # Customize the map plt.title("South America Highlighted on World Map", fontsize=14) plt.axis('off') # Hide the lat/long grid lines for a cleaner look # Show the plot plt.show()
Dopo aver filtrato i dati, la loro visualizzazione su una mappa è un passaggio essenziale nell'analisi geospaziale. geopandas si integra perfettamente con matplotlib, consentendo di creare mappe ricche e informative. È possibile personalizzare i colori degli elementi in base ai valori degli attributi e aggiungere legende per rendere i grafici più significativi.
123456789101112import matplotlib.pyplot as plt # Plot all world countries in light gray ax = world.plot(color='lightgray', edgecolor='white', figsize=(10, 6)) # Overlay South American countries in green with a legend south_america.plot(ax=ax, color='forestgreen', edgecolor='black', label='South America') # Add a title and legend plt.title("Countries of South America") plt.legend() plt.show()
Grazie per i tuoi commenti!
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione