этикетки печатаются при вызове set_xticklabels - PullRequest
0 голосов
/ 10 мая 2019

Выпуск:

Все этикетки печатаются при настройке поворота для оси X с использованием set_xticklabels.

Код

winner_freq = pd.DataFrame(player_match.winner.value_counts().reset_index())
winner_freq_plot = sns.barplot(x='index', y='winner', data=winner_freq)
winner_freq_plot.set_xticklabels(winner_freq_plot.get_xticklabels(), rotation=90)

Снимок экрана

enter image description here

Исправление, которое я пытался

Понятия не имею, как это исправить и гуглил, но ответа нет, поэтому я взял ярлыки отдельно в списке и подал внутри set_xticklabels, но все равно не повезло.

Заранее спасибо:)

1 Ответ

1 голос
/ 10 мая 2019

Это на самом деле не ошибка, а скорее характеристика matplotlib, которую использует seaborn.Большинство его функций возвращают значения, которые в некотором роде представляют вычисления, которые они выполнили.

В этом случае set_xticklabels изменяет метки , которые нарисованы с Text объектами,Это Text объекты, собранные в list, которые возвращаются.

То, что вы воспринимаете как «напечатанные» этикетки, - это просто ваша записная книжка Jupyter, представляющая это list как текст.

Если вы не хотите видеть это, вы можете присвоить результат одноразовой переменной, например:

_ = winner_freq_plot.set_xticklabels(winner_freq_plot.get_xticklabels(), rotation=90)

Тем не менее, обратите внимание, что _ обычно связывается с последнее возвращаемое значение , и при этом вы переопределите это.

Альтернативой является просто добавление оператора pass в ваш код.Поскольку Jupyter будет отображать возвращаемое значение последнего оператора в ячейке, а pass ничего не возвращает, вы не получите никакого вывода.

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