问题描述:根据月份聚合不同年份的数据,并创建带有月份的plotly条形图。
代码示例:
import pandas as pd
import plotly.express as px
# 创建数据
df = pd.DataFrame({
'date': pd.date_range('2018-01-01', '2020-12-31', freq='D'),
'value': range(1096)
})
# 根据月份聚合数据并计算每月的总和
df_monthly = df.groupby(pd.Grouper(key='date', freq='M'))['value'].sum().reset_index()
# 创建月份和年份列
df_monthly['month'] = df_monthly['date'].dt.month_name()
df_monthly['year'] = df_monthly['date'].dt.year
# 创建plotly动态条形图
fig = px.bar(df_monthly, x='month', y='value', color='year',
labels={'month': '月份', 'value': '值', 'year': '年份'},
title='不同年份各月的值总和')
fig.show()
这个示例代码首先使用pandas创建了一个时间序列数据,并计算了每天的value值。接下来,使用pandas的groupby方法根据'月份”聚合数据,并计算每月的value值总和。然后,创建'月份”和'年份”的列,并使用这些列作为color参数创建了一个动态条形图。最后,使用plotly.express的show方法显示图形。