Шаг 94.
Язык Python. Визуализация данных. Библиотека Seaborn. Визуализация отношений в данных. Линейный график. Визуализация временных рядов

    На этом шаге мы рассмотрим возможности библиотеки Pandas для визуализации данных.

    Библиотека Pandas предоставляет мощные инструменты для работы с временными рядами. Воспользуемся ими для того, чтобы создать набор данных, у которых в качестве индексов будут временные метки с января 2018 по январь 2019 с периодом в один месяц, а значения для этих меток сгенерируем случайным образом:

date_index = pd.date_range(start='2018', freq='M', periods=12)
print(date_index)

    Результат:

DatetimeIndex(['2018-01-31', '2018-02-28', '2018-03-31', '2018-04-30',
               '2018-05-31', '2018-06-30', '2018-07-31', '2018-08-31',
               '2018-09-30', '2018-10-31', '2018-11-30', '2018-12-31'],
              dtype='datetime64[ns]', freq='M')

    Набор данных для работы:

np.random.seed(123)
data_set = np.random.randint(5, size=len(date_index))

    Построим структуру DataFrame:

df = pd.DataFrame(data=data_set, index=date_index, columns=['value'])

    Первые пять элементов структуры:

print(df.head())

    Результат:

            value
2018-01-31      2
2018-02-28      4
2018-03-31      2
2018-04-30      1
2018-05-31      3

    Представим данные из df в виде линейного графика с помощью Seaborn:

sns.lineplot(data=df)


Рис.1. Визуализация временного ряда

    Вот полный текст приложения:

import matplotlib.pyplot as plt
import numpy as np
import seaborn as sns
import pandas as pd

date_index = pd.date_range(start='2018', freq='M', periods=12)
print(date_index)

np.random.seed(123)
data_set = np.random.randint(5, size=len(date_index))

df = pd.DataFrame(data=data_set, index=date_index, columns=['value'])
print(df.head())

sns.lineplot(data=df)

plt.show()
Архив с файлом можно взять здесь.

    Обратите внимание, что индексы из набора df были использованы в качестве данных для оси х.

    На следующем шаге мы рассмотрим диаграмму рассеяния.




Предыдущий шаг Содержание Следующий шаг