📌  相关文章
📜  如何使用 Plotly Python更改图例的位置?(1)

📅  最后修改于: 2023-12-03 15:08:23.459000             🧑  作者: Mango

如何使用 Plotly Python更改图例的位置?

在使用 Plotly 进行数据可视化的过程中,我们可能需要更改图例的位置,以便更好地展示数据。下面我们将介绍如何使用 Python 语言和 Plotly 库来实现更改图例位置的功能。

步骤1:导入所需库

我们需要导入 Plotly 库以及其他常用的数据处理库,如 numpypandas。在 Python 中可以使用 import 命令来导入。

import plotly.express as px
import numpy as np
import pandas as pd
步骤2:导入数据

此处我们使用 numpy 库生成一个样例数据,并且将其转化为 Pandas 数组格式。

x = np.linspace(0, 10, 100)
y1 = np.sin(x)
y2 = np.cos(x)

df = pd.DataFrame({'x': x, 'sin(x)': y1, 'cos(x)': y2})
df.head()
步骤3:绘制图形

首先,我们需要定义要绘制的图形类型以及数据的来源。代码如下:

fig = px.line(df, x='x', y=['sin(x)', 'cos(x)'], labels={'value': 'function'})

这将绘制一个基本的 line 图形,其中 x 轴为 xy 轴包括两个曲线 sin(x)cos(x)

步骤4:更改图例位置

默认情况下,Plotly 会将图例放在图形的右上角。如果我们需要更改图例的位置,可以使用 update_layout() 函数来实现。

fig.update_layout(
    legend=dict(
        x=0.5,
        y=-0.1,
        orientation='h'
    )
)

其中,xy 参数控制图例在 xy 维度上的位置,取值范围均为 0-1。这里我们将 y 设置为 -0.1,表示将图例放到 y 轴下方。orientation 参数控制图例的方向,'h' 表示水平方向,'v' 表示垂直方向。

步骤5:显示图形

最后,我们将绘制出的图形用 show() 函数展示出来。

fig.show()
完整代码
import plotly.express as px
import numpy as np
import pandas as pd

# Step2: 导入数据
x = np.linspace(0, 10, 100)
y1 = np.sin(x)
y2 = np.cos(x)

df = pd.DataFrame({'x': x, 'sin(x)': y1, 'cos(x)': y2})
df.head()

# Step3: 绘制图形
fig = px.line(df, x='x', y=['sin(x)', 'cos(x)'], labels={'value': 'function'})

# Step4: 更改图例位置
fig.update_layout(
    legend=dict(
        x=0.5,
        y=-0.1,
        orientation='h'
    )
)

# Step5: 显示图形
fig.show()

运行后,我们将得到如下的图形:

image-20211014094408996

我们可以看到,图例已经成功地被移动到了 y 轴下方,可以更好地展示数据了。