Нет легенд Seaborn Lineplot - PullRequest
       9

Нет легенд Seaborn Lineplot

0 голосов
/ 30 апреля 2019

Когда я делаю линейный сюжет с Seaborn с несколькими линейными сюжетами на одной оси, легенды не создаются.Даже если я предоставлю аргумент "краткое" или "полное" для легенды в sns.lineplot, ничего не отобразится, а вызов ax.get_legend_handles_labels () возвращает два пустых списка.

Как добавить легенды в поле направая сторона, связывающая цвет линии с именем?

enter image description here

import seaborn as sns
import matplotlib.pyplot as plt
import random

fig1 = plt.figure(figsize=(12, 12))
ax = fig1.add_subplot(1, 1, 1)

x = range(10)

series = list()
for i in range(3):
    y_i = list()
    for j in range(10):
        y_i.append(random.randint(0, 50))

    sns.lineplot(x=x, y=y_i, ax=ax, legend='brief')

plt.show()

1 Ответ

1 голос
/ 30 апреля 2019

Это потому, что вы применили простые списки как x- и y-данные.У них нет метаданных, таких как имена или метки.Вы можете добавить метку с помощью label -kwarg, например:

sns.lineplot(x=x, y=y_i, ax=ax, legend='brief', label=str(i))

Или вы решите использовать объект серии pandas или фрейм данных для своих данных, которые могут предоставлять имена столбцов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...