Визуализация данных с помощью Seaborn

Здравствуйте, друзья! В этой статье мы продолжим изучение Seaborn и разберемся с линейным графиком.

Что такое линейный график?

Библиотека Seaborn используется в визуализации данных на основе моделей, построенных из наборов данных, для прогнозирования результатов и анализа вариаций в данных.

Линейные графики Seaborn отображают взаимосвязь между непрерывными и категориальными значениями в формате непрерывных точек.

В этой статье мы будем использовать приведенный ниже набор данных для манипуляций и формирования линейного графика. Прежде чем двигаться дальше, ознакомьтесь с приведенным ниже содержимым набора.

В приведенном ниже наборе данных колонки переменных – ‘cyl‘, ‘vs‘, ‘am‘, ‘gear‘ и ‘carb‘ – являются категориальными переменными, поскольку все значения данных относятся к определенной категории или диапазону значений.

В это время остальные колонки данных относятся к целочисленным/непрерывным переменным, поскольку они несут дискретные целочисленные значения.

Входной набор данных:

Массив данных MTCARS

Построение первого участка графика Seaborn

Чтобы начать работу с Line Plots, нам необходимо установить и импортировать библиотеку Seaborn в среду Python с помощью следующей команды:

Синтаксис:

pip install seaborn

После завершения установки импортируйте библиотеку в текущую рабочую среду и используйте функции:

Синтаксис:

import seaborn

Мы будем использовать также библиотеку Matplotlib, чтобы построить график данных и представить их в надлежащем для визуального восприятия виде.

Создание одиночного линейного графика с помощью Seaborn

Мы можем предоставить дискретные значения или использовать наборы данных для создания линейного графика Seaborn.

Синтаксис:

seaborn.lineplot(x, y, data)

  • x: Переменная с координатой для оси x
  • y: Переменная с координатой для оси y
  • data: Объект, указывающий на весь набор данных или значения данных.

Пример 1: Использование случайных данных для построения линейного графика Seaborn

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

Year = [2012, 2014, 2016, 2020, 2021, 2022, 2018]
Profit = [80, 75.8, 74, 65, 99.5, 19, 33.6]

data_plot = pd.DataFrame({"Year":Year, "Profit":Profit})

sns.lineplot(x = "Year", y = "Profit", data=data_plot)
plt.show()

На приведенном ниже линейном графике мы можем наблюдать линейную зависимость между двумя переменными – ” Year” и “Profit”.

Вывод:

Пример 2: Использование набора данных для создания линейного графика и отображения взаимосвязи между двумя переменными.

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

data = pd.read_csv("C:/mtcars.csv")
info = data.iloc[1:20,:5]
sns.lineplot(x = "drat", y = "mpg",data=info)
sns.set(style='dark',)
plt.show()

Исходные данные:

Входной набор данных Seaborn LinePlot

Вывод:

Одновременное изображение нескольких графиков

Мы можем создать несколько графиков для визуализации данных в одном и том же пространстве. Мы можем использовать один или несколько столбцов данных/переменных данных и изобразить взаимосвязь между ними в целом.

1. Использование параметра hue для изображения нескольких графиков разного цвета

Параметр hue используется для группировки различных переменных набора данных и поможет изобразить взаимосвязь между столбцами данных по оси x и y, причем столбец передается в качестве значения аргумента.

Синтаксис:

seaborn.lineplot(x,y,data,hue)

Пример:

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

data = pd.read_csv("C:/mtcars.csv")
info = data.iloc[1:20,:5]
sns.lineplot(x = "drat", y = "mpg", data=info, hue="cyl")
plt.show()

Приведенный ниже график представляет собой три линии разной цветовой гаммы, отображающие взаимосвязь между “drat“, “mpg” и “cyl” соответственно.

Вывод:

2. Использование параметра style для построения различных типов линий

Мы можем установить аргумент style, чтобы задать различные типы линий: штрих, точки (маркеры) и т.д.

Синтаксис:

seaborn.lineplot(x, y, data, style)

Пример 2:

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

data = pd.read_csv("C:/mtcars.csv")
info = data.iloc[1:20,:5]
sns.lineplot(x = "drat", y = "mpg", data=info, hue="cyl", style="cyl")
plt.show()

На графике представлены отношения значения ‘cyl’ к ‘mpg’ и ‘drat’ с различными структурами линий, т.е. простой линией, пунктиром и точками.

Вывод:

3. Использование параметра размера для построения нескольких линейных графиков в Seaborn

Мы можем использовать параметр size функции seaborn.lineplot() для представления взаимосвязей между несколькими переменными данных с помощью линии разного размера. Таким образом, эта линия действует как группирующая переменная с различным размером/шириной в зависимости от величины данных.

Синтаксис:

seaborn.lineplot(x, y, data, size)

Пример 3:

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

data = pd.read_csv("C:/mtcars.csv")
info = data.iloc[1:20,]
sns.lineplot(x = "drat", y = "mpg", data=info, hue="gear",style="gear",size="gear")
plt.show()

Исходные данные:

Набор данных для построения нескольких графиков

Вывод:

Применение различной цветовой палитры

Цветовая карта и палитра Seaborn определяют цветовой диапазон для моделей визуализации. Параметр palette вместе с hue может использоваться для определения кодировки цветовой схемы.

Синтаксис:

seaborn.lineplot(x,y,data,hue,palette)

Пример:

import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
 
data = pd.read_csv("C:/mtcars.csv")
info = data.iloc[1:20,]
sns.lineplot(x = "drat", y = "mpg", data=info, hue="gear", palette = "Set1")
plt.show()

Вывод:

Добавление полос ошибок к линейным графикам

Линейные графики могут быть использованы для определения доверительных уровней/интервалов на графиках для отображения коэффициентов ошибок с помощью параметра err_style.

Синтаксис:

seaborn.lineplot(x,y,data,err_style=”bars”)

Пример:

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

data = pd.read_csv("C:/mtcars.csv")
info = data.iloc[1:20,]
sns.lineplot(x = "cyl", y = "mpg",data=info, err_style="bars")
plt.show()

Вывод:

Установка различных стилей с помощью функции seaborn.set()

Функция Python seaborn.set() может быть использована для отображения графика с другим стилем фона.

Синтаксис:

seaborn.set(style)

Пример:

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

data = pd.read_csv("C:/mtcars.csv")
info = data.iloc[1:20,]
sns.lineplot(x = "cyl", y = "mpg",data=info,hue="gear")
sns.set(style='dark',)
plt.show()

Вывод:

Заключение

В этой статье мы разобрались с линейными графиками и их вариациями.

Перевод статьи «Data Visualization with Seaborn Line Plot».