Groupby in plotly 对于第三列不是 x 和 y 轴的一部分
Groupby in plotly for a third column not part of x and y axis
我的数据框如下所示:
df
node date usage
Node1 10/20 2.3
Node1. 10/21 3.4
Node2 10/20 1.9
Node3 10/20 3.3
Node3 10/22 2.4
我希望以 x 轴作为日期,以 y 轴作为用法进行绘图,但我希望在一张图中使用三个折线图 - 每个节点一个(节点不是索引)。在那种情况下我该如何做一个groupby?
这是我的折线图代码:
data = [
go.Scatter(
x=result['date'],
y=result['usage']).groupby('node')
]
layout=go.Layout(title="CPU Usage per Node per day", xaxis={'title':'date intervals'}, yaxis={'title':'CPU load usage'})
fig = go.Figure(data=data, layout=layout)
py.iplot(fig)
这不是按每个节点分组(一个折线图用于 Node1,一个用于 Node2 等)。我在 r 中看到一个示例,我如何在 python3 中执行此操作?
Plotting graphs lines based on column values from the same datafram using Plotly
提前致谢
使用以下绘图表达式解决了这个问题:
import plotly.express as px
fig_final = px.bar(df, x="date", y="usage", color="node", title="CPU Usage for Node 1")
fig_final.show()
我的数据框如下所示:
df
node date usage
Node1 10/20 2.3
Node1. 10/21 3.4
Node2 10/20 1.9
Node3 10/20 3.3
Node3 10/22 2.4
我希望以 x 轴作为日期,以 y 轴作为用法进行绘图,但我希望在一张图中使用三个折线图 - 每个节点一个(节点不是索引)。在那种情况下我该如何做一个groupby?
这是我的折线图代码:
data = [
go.Scatter(
x=result['date'],
y=result['usage']).groupby('node')
]
layout=go.Layout(title="CPU Usage per Node per day", xaxis={'title':'date intervals'}, yaxis={'title':'CPU load usage'})
fig = go.Figure(data=data, layout=layout)
py.iplot(fig)
这不是按每个节点分组(一个折线图用于 Node1,一个用于 Node2 等)。我在 r 中看到一个示例,我如何在 python3 中执行此操作?
Plotting graphs lines based on column values from the same datafram using Plotly
提前致谢
使用以下绘图表达式解决了这个问题:
import plotly.express as px
fig_final = px.bar(df, x="date", y="usage", color="node", title="CPU Usage for Node 1")
fig_final.show()