如何用PLOTLY_EXPRESS绘制多线图?
问题描述
我需要从数据帧的多列创建折线图。在 pandas 中,您可以使用如下代码绘制多线图:
df.plot(x='date', y=['sessions', 'cost'], figsize=(20,10), grid=True)
如何使用PLOTLY_EXPRESS执行此操作?
解决方案
使用version 4.8 of Plotly.py,原问题中的代码现在几乎没有修改就被支持了:
pd.options.plotting.backend = "plotly"
df.plot(x='date', y=['sessions', 'cost'])
上一次回答,截至2019年7月
对于本例,您可以稍微不同地准备数据。
df_melt = df.melt(id_vars='date', value_vars=['sessions', 'cost'])
如果您将列(会话、成本)转置/融化到其他行中,则可以在color参数中指定新的列"变量"作为分区依据。
px.line(df_melt, x='date' , y='value' , color='variable')
Example plotly_express output
相关文章