отдельный график для каждого категориального значения с использованием sns - PullRequest
0 голосов
/ 25 февраля 2020

Я могу найти два способа, где можно быстро отобразить несколько графиков с помощью Seaborn. Один использует парные графики, а второй использует фазовую сетку. Однако я хочу, чтобы у меня был быстрый способ иметь отдельный график для каждого отдельного категориального значения в столбце (без создания отдельных фреймов данных для каждого категориального значения), но оба вышеуказанных метода не обеспечивают вывод, который я ищу , Так как я не хочу создавать отдельные кадры данных для своих графиков и хочу отдельные графики для каждого отдельного значения, поэтому я хочу знать быстрый способ выполнения sh this.

enter image description here

На этом изображении у меня есть только 1 график, поэтому я хочу отдельный график для masterkard, Chinapay, viza и carte rouge (без создания отдельных фреймов данных)

Ответы [ 2 ]

1 голос
/ 25 февраля 2020

Как вы упомянули в своем комментарии, это должно работать:

g = sns.FacetGrid(transactions, col="Processed Card Scheme")
g.map(sns.barplot,'Status','Transaction amount')

или что-то вроде этого?

import matplotlib.pyplot as plt
cardschemes = transactions['Processed Card Scheme'].values.unique()
fig, axs = plt.subplots(ncols=len(cardschemes))
for i, scheme in enumerate(cardschemes):
    sns.barplot(x="Status", 
                y="Transaction amount", 
                data=transactions[transactions['Processed Card Scheme'] == scheme],
                ax=axs[i])

Кстати, было бы легче ответить на вопросы, если вы используете минимальный воспроизводимый пример .

0 голосов
/ 26 февраля 2020

Вы можете использовать следующий код:

fig = plt.figure(figsize=(20,14))
ax1 = fig.add_subplot(131)
ax1 = fig.add_subplot(132)
ax1 = fig.add_subplot(133)

, который в моем случае дал три цифры на горизонтальной оси.

...