Здравствуйте, друзья! В этой статье мы продолжим изучение Seaborn и разберемся с линейным графиком.
Что такое линейный график?
Библиотека Seaborn используется в визуализации данных на основе моделей, построенных из наборов данных, для прогнозирования результатов и анализа вариаций в данных.
Линейные графики Seaborn отображают взаимосвязь между непрерывными и категориальными значениями в формате непрерывных точек.
В этой статье мы будем использовать приведенный ниже набор данных для манипуляций и формирования линейного графика. Прежде чем двигаться дальше, ознакомьтесь с приведенным ниже содержимым набора.
В приведенном ниже наборе данных колонки переменных – ‘cyl‘, ‘vs‘, ‘am‘, ‘gear‘ и ‘carb‘ – являются категориальными переменными, поскольку все значения данных относятся к определенной категории или диапазону значений.
В это время остальные колонки данных относятся к целочисленным/непрерывным переменным, поскольку они несут дискретные целочисленные значения.
Входной набор данных:
Построение первого участка графика 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()
Исходные данные:
Вывод:
Одновременное изображение нескольких графиков
Мы можем создать несколько графиков для визуализации данных в одном и том же пространстве. Мы можем использовать один или несколько столбцов данных/переменных данных и изобразить взаимосвязь между ними в целом.
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».