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

pythonserver side programmingprogramming更新于 2024/1/5 2:21:00

Plotly python 是 python 中的库,用于使用 plotly java 脚本创建交互式可视化。它提供了各种图表和绘图,如散点图、折线图、条形图等。

安装 plotly 库

要使用 plotly python 库,首先我们必须在我们的 python 环境中安装该库。以下是安装 plotly python 的代码。

pip install plotly

成功安装后,上述命令将生成以下输出 –

Defaulting to user installation because normal site-packages is not writeable
Collecting plotly
  Downloading plotly-5.14.1-py2.py3-none-any.whl (15.3 MB)
     ---------------------------------------- 15.3/15.3 MB 3.2 MB/s eta 0:00:00
Collecting tenacity>=6.2.0 (from plotly)
  Downloading tenacity-8.2.2-py3-none-any.whl (24 kB)
Installing collected packages: tenacity, plotly
Successfully installed plotly-5.14.1 tenacity-8.2.2

在 plotly 中更改图例的位置

图例用于为数据添加背景和清晰度,它显示图表中每个数据系列的名称以及相应的颜色。我们可以使用 legend 属性更改 plotly 中图例的位置。

语法

在 plotly python 中更改图例位置的语法如下。

update_layout(legend=dict(yanchor, y, xanchor, x))

其中,yanchor 和 xanchor 指定 x 轴和 y 轴。

示例

在下面的示例中,我们将数据集链接传递给 plotly 的 scatter() 函数,为给定的列创建散点图。然后我们更新图表以在图表的右上角显示图例。

import plotly.express as px
import pandas as pd
data = pd.read_csv("https://raw.githubusercontent.com/Opensourcefordatascience/Data-sets/master/blood_pressure.csv")
fig = px.scatter(data, x="agegrp", y="bp_before", color="sex")
fig.update_layout(legend=dict(yanchor="top", y=0.9, xanchor="right", x=0.4))
fig.show()

输出

当我们运行上述代码时,将生成以下输出 -

示例

让我们看看使用 plotly python 库更改图例位置的另一个示例。

import plotly.express as px
import pandas as pd
data = {"age" : [20,23,24,30,20],"year" : [2000,2004,2006,2009,2018]}
data = pd.DataFrame(data)
fig = px.scatter(data, x = "age", y = "year",color = "age")
fig.update_layout(legend = dict(yanchor="top", y=0.3, xanchor="right", x=0.4))
fig.show()

输出

示例

在此示例中,我们创建了一个条形图,并将图例的位置设置在图表的左下角。

import plotly.graph_objects as px
import pandas as pd

x = ['1-10 Overs', '11-20 Overs', '21-30 Overs', '31-40 Overs']

plot = px.Figure(data=[px.Bar(
    name = 'Player1',
    x = x,
    y = [12,30,40,20]
   ),px.Bar(
       name = 'Player2',
       x = x,
       y = [20,25,30,30]
   )
])
     
plot.update_layout(legend = dict(yanchor="top", y=0, xanchor="left", x=0))
plot.show()

输出

以下是图表上图例位置的输出。


相关文章