如何获得在绘图中生成的x轴和y轴范围?

问题描述 投票:1回答:1

我有一个非常简单的气泡图,请参见下文。我唯一需要的就是能够获得范围(或最小和最大)或生成的x和y轴。

trace = go.Scatter(
    x=df_test['total_points_mean'],
    y=df_test['total_points_std'],
    mode='markers',
    text=df_test['play_maker'],
    marker=dict(size=df_test['week_nunique'],
                color = df_test['week_nunique'],
                showscale=True)
)

layout = go.Layout(title='Scatter Plot')
fig = go.Figure(data=[trace],layout=layout)

从结果图中,x轴的最小值和最大值似乎在〜10和〜29左右,但是我需要一种方法来生成轴范围的精确值。

enter image description here

是否可以访问生成的轴范围?

python-3.x range plotly axes
1个回答
1
投票

在python实现中无法从绘图中获取轴范围。仅当在布局中指定了轴范围时,才可以检索该范围(但实际上并不需要它)。

因此,如果您尝试print(fig.layout.xaxis.range),将得到None

如果需要限制,则需要自己制作并将其应用于布局:

  1. 获取x值的最小值和最大值:xminxmax
  2. 将这些值加上一些因素:xlim = [xmin*.95, xmax*1.05]
  3. 更新布局:fig.update_layout(xaxis=dict(range=[xlim[0],xlim[1]]))

现在,如果您尝试print(fig.layout.xaxis.range),您将获得轴范围。

这让我很烦恼,所以我不得不更深入地研究,credit goes to @Emmanuelle on the plotly forums以确认这一现实。

© www.soinside.com 2019 - 2024. All rights reserved.