我有一些我正在使用的代码:
这些是创建堆积条形图的轨迹。现在我正在寻找一种方法使这些跟踪动态取决于下拉菜单提供的变量。
问题是下拉菜单中的每个选择都不需要所有的痕迹。例如,选择 A 没有“住宅”的值,这给了我一个错误。
pv = pd.pivot_table(
df_plot,
index=['Year'],
columns=["Market segment"],
values=['Value'],
aggfunc=sum,
fill_value=0)
trace1 = go.Bar(x=pv.index, y=pv[("Value", "Residential")], name="Residential")
trace2 = go.Bar(x=pv.index, y=pv[("Value", "Business – small")], name="Business – small")
trace3 = go.Bar(x=pv.index, y=pv[("Value", "Business – medium")], name="Business - medium")
trace4 = go.Bar(x=pv.index, y=pv[("Value", "Business – micro")], name="Business - micro")
trace5 = go.Bar(x=pv.index, y=pv[("Value", "Business – SME")], name="Business - SME")
trace6 = go.Bar(x=pv.index, y=pv[("Value", "Business")], name="Business")
return {
'data': [trace1, trace2, trace3, trace4, trace5, trace6],
'layout':
go.Layout(
title='Metric: {}'.format(Metric),
barmode='stack')
}