Ste*_*den 13 axes range python-3.x plotly
我有一个非常简单的气泡图,见下文。我唯一需要的是能够获得范围(或最小值和最大值)或生成的 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)
Run Code Online (Sandbox Code Playgroud)
从结果图中,x 轴的最小值和最大值似乎在 ~10 和 ~29 左右,但我需要一种方法来生成轴范围的确切值。
有没有办法访问生成的轴范围?
jay*_*sea 16
在 python 实现中,不可能从绘图中获取轴范围。如果您在布局中指定轴范围,则只能检索范围(但实际上您并不需要它)。
所以如果你尝试print(fig.layout.xaxis.range)你会得到None。
如果您需要限制,那么您需要自己制作并将其应用于布局:
xmin,xmaxxlim = [xmin*.95, xmax*1.05]fig.update_layout(xaxis=dict(range=[xlim[0],xlim[1]]))现在,如果您尝试,print(fig.layout.xaxis.range)您将获得轴范围。
这让我很烦恼,所以我不得不深入挖掘,归功于阴谋论坛上的@Emmanuelle确认了这一现实。
更新 20210129:Plotly 添加了.full_figure_for_development()方法。
.full_figure_for_development() 方法提供对 Plotly.js 计算的默认值的 Python 级别访问。该方法需要Kaleido包,安装方便,也用于静态图片导出。
所以现在你可以:
full_fig = fig.full_figure_for_development()
print(full_fig.layout.xaxis.range)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7364 次 |
| 最近记录: |