Базові просторові операції
Свайпніть щоб показати меню
Робота з геопросторовими даними часто починається з можливості фільтрувати, вибирати та візуалізувати об'єкти на основі їхніх атрибутів або просторових властивостей. За допомогою бібліотеки geopandas можна ефективно виконувати ці базові просторові операції. Фільтрація дозволяє зосередитися на об'єктах, що становлять інтерес у великому наборі даних, а візуалізація допомагає інтерпретувати просторові закономірності та взаємозв'язки візуально.
Для фільтрації просторових даних зазвичай використовують булеву індексацію та аксесор .loc у geopandas. Це дозволяє вибирати рядки, які відповідають певним критеріям, наприклад, усі об'єкти з певним значенням атрибуту.
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()
Після фільтрації даних їх візуалізація на карті є важливим етапом у геопросторовому аналізі. geopandas інтегрується з matplotlib, що дозволяє створювати інформативні карти. Можна налаштовувати кольори об'єктів відповідно до значень атрибутів і додавати легенди для підвищення інформативності графіків.
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()
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат