Предположим, у меня есть фрейм данных под названием "market", который является полной базой данных моей транзакции. Я сгруппировал его по каждому месяцу и продукту, поэтому получаю сумму продаж (долл. США) для каждого продукта / месяца
test=market.groupby(['Product','Month']).sum()['Sales'].unstack()
test
И результат сверху, как этот
month/product 1 2 3 4 5 6 7 8 9 10 11 12
milk 12 13 12 13 21 21 9 10 15 17 16 20
bread 15 13 13 12 25 24 11 5 13 13 17 14
rice 12 13 15 13 21 21 9 10 19 11 16 25
coffee 12 13 12 16 25 23 11 20 15 14 11 15
tea 15 13 12 13 25 24 11 5 13 8 17 19
Как я можно сделать график с накопленными продажами продукта?
ось x = месяц с накопленными продажами для каждого продукта
ось y = продажи
Что я уже сделал:
Первая попытка:
fig, sumbu = plt.subplots(figsize=(5,3))
graph=test.plot.bar(stacked='True', ax=sumbu)
plt.xlabel('Month', fontsize='12', color='red')
plt.ylabel('Sales', fontsize='12', color='red')
plt.xticks(rotation=45, size=8)
plt.show(graph)
Он работает, но ось X является продуктом (я ожидал месяц)
Вторая попытка:
fig, sumbu = plt.subplots(figsize=(5,3))
graph=test.plot.bar(x='Month', y='Sales', stacked=True, ax=sumbu)
plt.xlabel('Month', fontsize='12', color='red')
plt.ylabel('Sales', fontsize='12', color='red')
plt.xticks(rotation=45, size=8)
plt.show(graph)
"KeyError: 'месяц'