не может построить двойную ось, используя морской - PullRequest
0 голосов
/ 03 апреля 2020

У меня была проблема, когда я пытался построить двухосный график, используя seaborn в блокноте jupyter.

(важное примечание !!: код работает очень хорошо, когда я использовал python2).

У меня ошибка при обновлении до anaconda python3 сегодня.

Сообщение об ошибке:

/ Users / enyi / opt / anaconda3 / lib / python3. 7 / site-packages / seaborn / categoryorical.py: 3720: UserWarning: catplot - это функция уровня фигуры, которая не принимает целевые оси. Вы можете wi sh попробовать countplot warnings.warn (msg, UserWarning)

Вот выходное изображение моего кода:
https://i.stack.imgur.com/c968L.png

My код:

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

df = pd.read_csv('tips.csv')

fig, ax = plt.subplots(1,2,figsize = (10,5))

sns.catplot(x='sex', hue = 'group', data= df, kind = 'count', ax=ax[0])
sns.catplot(x='sex', y='conversion',hue = 'group', data= df, kind = 'bar',ax=ax[1])

plt.show()

1 Ответ

0 голосов
/ 03 апреля 2020

Я не понимаю, как ваш код мог бы работать с Python2, но это не относится к делу. Сообщение об ошибке ясно говорит вам, что catplot не принимает аргумент ax=. Если вы хотите построить график на вспомогательных участках, вы должны использовать базовую функцию построения графиков (в первом случае countplot, как предполагает ошибка)

fig, ax = plt.subplots(1,2,figsize = (10,5))
sns.countplot(x='sex', hue = 'group', data= df, ax=ax[0])
sns.barplot(x='sex', y='conversion',hue = 'group', data= df,ax=ax[1])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...