📅  最后修改于: 2023-12-03 15:34:03.513000             🧑  作者: Mango
当需要使用多个 Y 轴来对比不同的数据时,使用 Plotly 可以轻松地实现这一点。在本指南中,我们将介绍如何使用 Python Plotly 库来添加多个 Y 轴。
为了跟随本指南,需要安装以下库:
plotly
pandas
可以使用以下命令安装这些库:
pip install plotly pandas
在本指南中,我们将使用以下数据集:
import pandas as pd
data = {
'data1': [10, 20, 30, 40, 50],
'data2': [15, 25, 35, 45, 55],
'data3': [20, 30, 40, 50, 60],
'data4': [25, 35, 45, 55, 65]
}
df = pd.DataFrame(data)
使用 Plotly,我们可以为每个数据系列创建一个独立的 Y 轴(即主 Y 轴和辅助 Y 轴)。
要添加多个 Y 轴,可以使用以下代码:
import plotly.graph_objs as go
trace1 = go.Scatter(
x=df.index,
y=df['data1'],
name='Data 1',
yaxis='y'
)
trace2 = go.Scatter(
x=df.index,
y=df['data2'],
name='Data 2',
yaxis='y2'
)
trace3 = go.Scatter(
x=df.index,
y=df['data3'],
name='Data 3',
yaxis='y3'
)
trace4 = go.Scatter(
x=df.index,
y=df['data4'],
name='Data 4',
yaxis='y4'
)
data = [trace1, trace2, trace3, trace4]
layout = go.Layout(
yaxis=dict(
title='Data 1',
titlefont=dict(
color='blue'
),
tickfont=dict(
color='blue'
)
),
yaxis2=dict(
title='Data 2',
titlefont=dict(
color='orange'
),
tickfont=dict(
color='orange'
),
overlaying='y',
side='right'
),
yaxis3=dict(
title='Data 3',
titlefont=dict(
color='green'
),
tickfont=dict(
color='green'
),
overlaying='y2',
side='left'
),
yaxis4=dict(
title='Data 4',
titlefont=dict(
color='red'
),
tickfont=dict(
color='red'
),
overlaying='y3',
side='right'
)
)
fig = go.Figure(data=data, layout=layout)
fig.show()
需要注意的是,所有的 Y 轴都必须在布局中声明,对于每个 Y 轴,可以定义其所对应的数据系列(即 trace
变量)和其位置(即 overlaying
和 side
属性)。
通过本指南,可以了解如何使用 Python Plotly 来添加多个 Y 轴。使用 Plotly,可以轻松地实现对比多个数据系列的效果。