Шаг 109.
Язык Python. Визуализация данных. Библиотека Seaborn. ... . Визуализация категориальных данных в виде точечных диаграмм. Функция stripplot() (окончание)

    На этом шаге мы приведем еще несколько примеров использования этой функции.

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

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

tips = sns.load_dataset("tips")

color_palette = {"Male": "r", "Female": "g"}
sns.stripplot(x="size", y='tip', hue="sex",
              palette=color_palette, data=tips)

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


Рис.1. Пример изменения цветовой схемы через параметр palette

    Увеличим размер маркеров, зададим им цвет и ширину границы:

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

tips = sns.load_dataset("tips")

sns.stripplot(x="time", y='tip', size=10, edgecolor="gray",
              linewidth=1, data=tips.sample(frac=1, random_state=123)[:30])

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


Рис.2. Настройка внешнего вида маркеров через параметры size, edgecolor и linewidth

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

    Изменим порядок вывода признаков: поменяем Dinner и Lunch местами:

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

tips = sns.load_dataset("tips")

sns.stripplot(x="time", y='tip', hue_order=["Dinner", "Lunch"], data=tips)

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


Рис.3. Демонстрация работы с параметром hue_order

    Ориентация диаграммы задаётся через параметр orient:

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

tips = sns.load_dataset("tips")

sns.stripplot(x='tip', y="time", orient='h', data=tips)

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


Рис.4. Задание горизонтальной ориентации диаграммы

    Обратите внимание, что имена признаков для x и у тоже были переставлены местами. Для улучшения наглядности диаграммы, в которой используется цветовое разделение через параметр hue, можно представить полученные наборы в виде визуально различимых групп с помощью параметра dodge:

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

tips = sns.load_dataset("tips")

sns.stripplot(x="time", y='tip', hue="sex", dodge=True, data=tips)

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


Рис.5. Демонстрация работы с параметром dodge

    Кучность представляемых наборов регулируется параметром jitter. Эта опция может быть полезна, если необходимо устранить перекрытие между наборами данных. Пример с настройками по умолчанию:

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

tips = sns.load_dataset("tips")

sns.stripplot(x="size", y='tip', data=tips)

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


Рис.6. Диаграмма со значением по умолчанию для параметра jitter

    Изменим значение jitter на 0.03:

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

tips = sns.load_dataset("tips")

sns.stripplot(x="size", y='tip', size=5, jitter=0.03, data=tips)

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


Рис.7. Диаграмма со значением jitter равным 0.03

    Если jitter присвоить True, то будет автоматически подобрано наиболее оптимальное значение.

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




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