Я пытаюсь использовать Plotly для создания сложенной или сгруппированной гистограммы с месяцем/годом на оси x и значениями на оси y. Фрейм данных выглядит так:
category value date
apple 4 10/2020
banana 3 10/2020
apple 2 10/2020
strawberry 1 11/2020
banana 4 11/2020
apple 9 11/2020
banana 4 12/2020
apple 7 12/2020
strawberry 4 12/2020
banana 8 12/2020
.
.
.
Предполагая, что появятся новые даты, а также можно будет добавить больше категорий, я пытаюсь создать сгруппированную гистограмму, которую также можно прокручивать по оси X (дата).
Я попробовал это, чтобы создать сгруппированную гистограмму, но вместо этого она оказалась гистограммой с накоплением:
import plotly.graph_objects as go
fig_3_a = go.Figure(data=[go.Bar(
x=df['date'],
y=df['value'],
text=df['category'],
textposition='auto',
orientation ='v',
)],
layout=go.Layout(barmode='group'))
Вместо этого я хотел бы что-то вроде этого, где разным категориям может быть назначен другой цвет, а ось x - месяц/день, а ось y - значение. Здесь gender==category
и x-axis==month/year
. Также необходимо добавить прокрутку по оси X, чтобы увидеть весь месяц/год:
Вы можете сделать это просто с помощью plotly.express
.
import plotly.express as px
fig = px.bar(df, x='date', y='value', color='category', barmode='group')
fig.show()
Если вы хотите сделать это с классом go.Bar
, вам нужно добавить трассировки для каждой категории.