Шаг 128.
Язык Python. Визуализация данных. Библиотека Seaborn. Визуализация распределений в данных. Функция kdeplot() (окончание)

    На этом шаге мы рассмотрим настройку внешнего вида диаграммы.

    Для настройки внешнего вида диаграммы можно воспользоваться следующими параметрами:

shade: bool, optional
Определяет наличие (True) или отсутствие (False) заливки под кривой KDE для одномерного варианта или заливку контуров для двумерного варианта.

vertical: bool, optional
Расположение графика. Если значение равно True, то численное значение параметра откладывается по оси х, KDE - по оси у, если False, то наоборот.

color: Matplotlib-цвет, optional
Цвет графика и заливки.

cmap: str или Colormap, optional
Цветовая карта для диаграммы (см. 59 шаг "Цветовые карты").

legend: bool, optional
Если параметр равен True, то легенда будет добавлена на диаграмму.

cbar: bool, optional
Если параметр равен True, то на диаграмму будет добавлена цветовая полоса (используется для двумерной KDE).

shade_lowest: bool, optional
Управляет заливкой. Если параметр равен True, то будет скрыта областью с наименьшим значением KDE. Используется только для двумерной KDE.

cumulative: bool, optional
Если равно True, то будет отображена функция распределения.

gridsize: int, optional
Количество точек в сетке.

    Рассмотрим на практике работу с некоторыми из перечисленных параметров.

    Отобразим заливку для одномерного варианта KDE:

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

tips = sns.load_dataset("tips")
geyser = sns.load_dataset("geyser")

x = geyser["waiting"]
y = geyser["duration"]
sns.kdeplot(y, shade=True)

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


Рис.1. Демонстрация работы с параметром shade функции kdeplot()

    Изменим цвет:

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

tips = sns.load_dataset("tips")
geyser = sns.load_dataset("geyser")

x = geyser["waiting"]
y = geyser["duration"]
sns.kdeplot(y, shade=True, color='r')

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


Рис.2. Демонстрация работы с параметром color функции kdeplot()

    Добавим семантическую переменную hue, которая сопоставляется для определения цвета элементов графика.

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

tips = sns.load_dataset("tips")
geyser = sns.load_dataset("geyser")

sns.kdeplot(data=geyser, x="waiting", y="duration",
            hue="kind", shade=True)

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


Рис.3. Демонстрация работы с параметром hue функции kdeplot()

    Уберем с графика легенду:

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

tips = sns.load_dataset("tips")
geyser = sns.load_dataset("geyser")

sns.kdeplot(data=geyser, x="waiting", y="duration",
            hue="kind", shade=True, legend=False)

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


Рис.4. Демонстрация работы с параметром legend функции kdeplot()

    Зададим количество уровней для отображения:

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

tips = sns.load_dataset("tips")
geyser = sns.load_dataset("geyser")

sns.kdeplot(data=geyser, x="waiting", y="duration",
            hue="kind", shade=True, n_levels=3)

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


Рис.5. Демонстрация работы с параметром n_levels функции kdeplot() (двумерный набор данных)

    Уберём с диаграммы заливку уровня с наименьшим значением KDE и добавим colorbar:

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

tips = sns.load_dataset("tips")
geyser = sns.load_dataset("geyser")

sns.kdeplot(data=geyser, x="waiting", y="duration", hue=hue="kind",
            shade=True, n_levels=3, shade_lowest=False,
            cbar=True)

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


Рис.6. Демонстрация работы с параметром shade_lowest и cbar функции kdeplot() (двумерный набор данных)

    Построим функцию распределения:

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

tips = sns.load_dataset("tips")
geyser = sns.load_dataset("geyser")

y = geyser["duration"]
sns.kdeplot(y, shade=True, cumulative=True)

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


Рис.7. Демонстрация работы с параметром cumulative функции kdeplot()

    Изменим цветовую палитру на 'mako':

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

tips = sns.load_dataset("tips")
geyser = sns.load_dataset("geyser")

y = geyser["duration"]
x = geyser["waiting"]
sns.kdeplot(x, y, shade=True, cmap='mako')

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


Рис.8. Демонстрация работы с параметром cmap функции kdeplot()

    На следующем шаге мы рассмотрим функцию rugplot().




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