ISBN :
Возрастное ограничение : 12
Дата обновления : 06.02.2024
# Создаем данные для примера
x = np.linspace(0, 2 * np.pi, 100)
y = np.sin(x)
# Строим линейный график с Matplotlib
plt.plot(x, y, label='Синус')
plt.xlabel('X-ось')
plt.ylabel('Y-ось')
plt.title('Интерактивный график синуса')
plt.legend()
# Преобразуем Matplotlib график в интерактивный с использованием Plotly
fig = go.Figure()
fig.add_trace(go.Scatter(x=x, y=y, mode='lines', name='Синус'))
# Настраиваем макет
fig.update_layout(
title='Интерактивный график синуса',
xaxis=dict(title='X-ось'),
yaxis=dict(title='Y-ось'),
)
# Отображаем интерактивный график внутри ячейки Jupyter Notebook
display(HTML(fig.to_html()))
```
В этом примере:
– Мы создаем данные и строим линейный график с Matplotlib.
– Затем мы используем Plotly, чтобы преобразовать этот график в интерактивный. Обратите внимание, что для этого требуется установка библиотеки Plotly (`pip install plotly`).
– Используется `display(HTML(fig.to_html()))`, чтобы отобразить интерактивный график внутри ячейки Jupyter Notebook.
Таким образом, вы можете взаимодействовать с данными, изменять масштаб, выделять области и другие действия прямо внутри Jupyter Notebook, что делает визуализацию данных более удобной и информативной.
6. Встроенные цветовые карты:
Matplotlib предоставляет широкий выбор цветовых карт для лучшего представления данных. От дискретных цветовых карт до плавных переходов, библиотека предоставляет разнообразные опции.
Давайте рассмотрим пример использования различных цветовых карт в Matplotlib. В этом примере мы создадим тепловую карту, используя различные цветовые карты для лучшего представления данных.
```python
import matplotlib.pyplot as plt
import numpy as np
# Создаем данные для тепловой карты
data = np.random.random((10, 10))
# Список цветовых карт для использования
colormaps = ['viridis', 'plasma', 'magma', 'inferno', 'cividis']
# Создаем подграфики для каждой цветовой карты
fig, axes = plt.subplots(1, len(colormaps), figsize=(15, 3))
# Строим тепловую карту для каждой цветовой карты
for i, cmap in enumerate(colormaps):
im = axes[i].imshow(data, cmap=cmap)
axes[i].set_title(f'Цветовая карта: {cmap}')
fig.colorbar(im, ax=axes[i], orientation='vertical', fraction=0.046, pad=0.04)
# Регулируем расположение графиков
plt.tight_layout()
# Показываем графики
plt.show()
```
В этом примере:
– Мы создаем случайные данные для тепловой карты с использованием NumPy.
– Затем мы строим тепловые карты для различных цветовых карт (`viridis`, `plasma`, `magma`, `inferno`, `cividis`).
– Для каждой цветовой карты добавляем шкалу цветов.
Этот пример демонстрирует разнообразие цветовых карт в Matplotlib, отличающихся как по цветовому спектру, так и по контрасту. Выбор подходящей цветовой карты может улучшить восприятие данных на графиках.
В Matplotlib существует множество цветовых карт. Вы можете получить актуальный список цветовых карт, вызвав функцию `plt.colormaps()`.
Практическое задание
Задача: Мониторинг изменений температуры на глобальной карте
Описание:
Вам предоставлены данные о температуре в различных регионах мира за последние несколько лет. Ваша задача – визуализировать эти данные на глобальной карте с использованием цветовых карт для наглядного отображения изменений температуры.
1. Подготовка данных:
– Загрузите данные о температуре в различных регионах мира. Данные могут включать временные метки, широту, долготу и значения температуры.
2. Выбор Цветовой Карты:
– Выберите цветовую карту, которая лучше всего подходит для отображения изменений температуры. Например, можно использовать цветовую карту типа `coolwarm` для выделения разницы между холодными и теплыми областями.
3. Построение Глобальной Карты:
– Используя библиотеку Matplotlib, постройте глобальную карту, на которой цветами будет представлена температура в различных регионах. Широта и долгота могут быть представлены на осях X и Y, а цветом можно отображать температурные значения.
4. Добавление Интерактивности:
– Добавьте интерактивность к карте, чтобы пользователи могли навигировать по временной оси и наблюдать изменения температуры в различные периоды.
5. Анимация (опционально):
– Если у вас есть временные данные, рассмотрите возможность добавления анимации для визуализации динамики изменений температуры в течение времени.
6. Сохранение и Публикация:
– Сохраните визуализацию в удобных форматах (например, PNG или GIF) для возможности вставки в презентации, отчеты или веб-страницы.
7. Анализ и Интерпретация:
– Проанализируйте глобальную карту температурных изменений и сделайте выводы о тенденциях в изменениях температуры в различных регионах мира.
Эта задача не только поможет вам понять, как применять цветовые карты для визуализации данных, но и позволит вам рассмотреть вопросы глобального мониторинга изменений температуры.
Решение данной задачи может включать использование библиотеки Matplotlib в языке программирования Python. Приведенный ниже код демонстрирует пример создания глобальной карты температурных изменений с использованием цветовой карты `coolwarm`. Предполагается, что данные о температуре уже загружены в соответствующий формат.
```python
import matplotlib.pyplot as plt
import numpy as np
# Подготовка данных (пример)
latitudes = np.random.uniform(low=-90, high=90, size=(1000,))
longitudes = np.random.uniform(low=-180, high=180, size=(1000,))
temperatures = np.random.uniform(low=-20, high=40, size=(1000,))
# Выбор цветовой карты
cmap = 'rainbow_r'
# Построение глобальной карты
fig, ax = plt.subplots(figsize=(12, 6))
scatter = ax.scatter(longitudes, latitudes, c=temperatures, cmap=cmap, s=50, alpha=0.7)
plt.colorbar(scatter, label='Temperature (°C)')
# Добавление интерактивности (подписи и т.д.)
# Настройка внешнего вида карты (опционально)
# Сохранение и отображение
plt.savefig('global_temperature_map.png')
plt.show()
```
Этот код создает точечный график на глобальной карте, где каждая точка представляет собой регион с определенными координатами и температурой. Цвет точек отражает температурные значения с использованием цветовой карты `coolwarm`. Пользователь может легко настраивать параметры визуализации, добавлять интерактивность и адаптировать код под свои конкретные потребности.
7. Темы оформления (Styles):
Matplotlib включает в себя различные темы оформления, которые изменяют внешний вид всех графиков на одной или нескольких диаграммах. Это позволяет легко сменить общий стиль графиков в проекте.
Все книги на сайте предоставены для ознакомления и защищены авторским правом