Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Розширене візуалізування з Matplotlib та Seaborn | Методи просторового аналізу
Геопросторовий Аналіз з Python

Розширене візуалізування з Matplotlib та Seaborn

Свайпніть щоб показати меню

Під час роботи з просторовими даними ефективна візуалізація є ключовою для виявлення закономірностей і передачі аналітичних висновків. Бібліотеки Python matplotlib і seaborn надають потужні інструменти для вдосконалення просторових графіків, дозволяючи налаштовувати кольори, додавати інформативні легенди, встановлювати описові заголовки та накладати кілька шарів даних. Оволодівши цими техніками, можна створювати чіткі, виразні карти та візуалізації, які підкреслюють важливі просторові взаємозв'язки.

Налаштування просторових графіків часто починається з контролю зовнішнього вигляду даних. Можна вказувати кольори для представлення різних категорій або значень, регулювати прозорість для відображення перекриваючихся об'єктів і використовувати легенди для пояснення візуальних кодувань. Додавання заголовків і підписів до осей допомагає глядачам швидко інтерпретувати графіки. Накладання кількох шарів—наприклад, доріг поверх адміністративних меж—додає глибший контекст до просторового аналізу.

12345678910111213141516171819202122232425262728293031323334
import geopandas as gpd import matplotlib.pyplot as plt url = "https://naciscdn.org/naturalearth/110m/cultural/ne_110m_admin_0_countries.zip" world = gpd.read_file(url) # Create a plot with customizations fig, ax = plt.subplots(figsize=(12, 8)) # Plot countries, coloring by continent world.plot(column='CONTINENT', cmap='Set2', edgecolor='black', linewidth=0.5, legend=True, ax=ax, alpha=0.8) # Overlay country boundaries with a thicker line for emphasis world.boundary.plot(ax=ax, color='gray', linewidth=1.5) # Add a title and axis labels ax.set_title('World Countries by Continent', fontsize=18) ax.set_xlabel('Longitude') ax.set_ylabel('Latitude') # Customize legend position so it doesn't overlap the map leg = ax.get_legend() if leg: leg.set_bbox_to_anchor((1.15, 0.5)) plt.tight_layout() plt.show()
Note
Примітка

Назва стовпця в офіційному наборі даних — CONTINENT

Окрім візуалізацій на основі карт, можна досліджувати розподіл просторових атрибутів — таких як площа, населення чи щільність — за допомогою статистичних графіків. Seaborn особливо корисний для цього, оскільки дозволяє створювати гістограми, точкові діаграми та інші графіки з привабливим стилем за замовчуванням і простим налаштуванням. Поєднуючи seaborn із просторовими даними, можна швидко виявляти тенденції та аномалії у ваших наборах даних, що сприяє глибшому просторовому аналізу.

1234567891011121314151617181920212223242526272829303132
import geopandas as gpd import seaborn as sns import matplotlib.pyplot as plt # Load sample data directly from the official URL url = "https://naciscdn.org/naturalearth/110m/cultural/ne_110m_admin_0_countries.zip" world = gpd.read_file(url) # The official dataset doesn't have a pre-made 'area' column, so we calculate it. # Note: This calculates area in decimal degrees based on the WGS84 projection. world['area'] = world.geometry.area # Plot a histogram of country areas plt.figure(figsize=(10, 6)) # 'area' is our new custom column, kde=True adds the density curve sns.histplot(world['area'], bins=30, color='skyblue', kde=True) plt.title('Distribution of Country Areas') plt.xlabel('Area (sq. degrees)') plt.ylabel('Number of Countries') plt.tight_layout() plt.show() # Plot a scatter plot of population vs. area plt.figure(figsize=(10, 6)) # Adjusted column names to match the official dataset: 'POP_EST' and 'CONTINENT' sns.scatterplot(x='area', y='POP_EST', data=world, hue='CONTINENT', palette='Set2') plt.title('Country Population vs. Area by Continent') plt.xlabel('Area (sq. degrees)') plt.ylabel('Estimated Population') plt.legend(title='Continent', bbox_to_anchor=(1.05, 1), loc='upper left') plt.tight_layout() plt.show()
question mark

Яке з наведених тверджень найкраще описує вплив використання різних колірних карт і легенд у просторових візуалізаціях?

Виберіть правильну відповідь

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 2. Розділ 4

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

Секція 2. Розділ 4
some-alt