使用plotly

问题描述

我有两个样本如下所示的数据集:

| Week       | System | Total |
|------------|--------|-------|
| 2019-10-14 | a      | 600   |
| 2019-10-14 | b      | 130   |
| 2019-10-21 | a      | 820   |
| 2019-10-21 | b      | 205   |
| 2019-10-28 | a      | 850   |
| 2019-10-28 | b      | 230   |

| Week       | a    | b     |
|------------|------|-------|
| 2019-10-14 | NaN  | NaN   |
| 2019-10-21 | 39.5 | 61.48 |
| 2019-10-28 | 6.19 | -1.45 |

a和b值的格式以百分比表示。输入提供为:

df=[['2019-10-14','a',600],['2019-10-14','b',130],['2019-10-21',820],205],['2019-10-28',850],230]]
df= pd.DataFrame(df,columns=['Week','System','Total'])
df['Week'] =  pd.to_datetime(df['Week'],format='%Y-%m-%d')

df1=[['2019-10-14',np.nan,np.nan],39.5,61.48],6.19,-1.45]]
df1= pd.DataFrame(df1,'b'])
df1['Week'] =  pd.to_datetime(df1['Week'],format='%Y-%m-%d')

我想在同一图中以图形方式绘制数据框df的分组条形图和数据框df1的多折线图,以使df1的y轴充当辅助轴。

链接倾向于解决类似的问题,但是在使用相同的概念-How to overlay two plots in same figure in plotly?

时出现错误

下面是我尝试过的代码片段,但在此过程中我遇到了错误。我猜错误是在fin.add_trace(trace1)

cmap_2 = {
        'a': '#C64E34','b': '#EA85ED',}
trace1 = px.bar(df,x="Week",y="Total",color="System",barmode="group",color_discrete_map=cmap_2)


trace2 = go.figure()
trace2.add_trace(go.Scatter(x=df1['Week'],y=df1['a'],name='A',line=dict(color='red',width=4)))
trace2.add_trace(go.Scatter(x=df1['Week'],y=df1['b'],name='B',line=dict(color='purple',width=4,dash='dash')
))

trace2.update_xaxes(
    tickvals=["2019-10-14","2019-10-21","2019-10-28"]
)



fin = make_subplots(specs=[[{"secondary_y": True}]])
fin.add_trace(trace1)
fin.add_trace(trace2,secondary_y=True)
fin['layout'].update(height = 600,width = 800,title = title,xaxis=dict(tickangle=-90))
iplot(fin)

最终输出应类似于下面提供的示例图:

enter image description here

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...