You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Plotly Python:动态图表大小下图例固定边距设置咨询(无需相对计算)

解决Plotly图例与图表固定间隙的问题

你当前使用x: 1.1是基于绘图区域宽度的相对比例值,因此图表宽度变化时间隙会随之缩放。要实现固定像素的间隙,无需手动计算,可直接使用带单位的位置字符串配置图例:

修改图例的配置为:

legend={
    'x': '100% + 20px',  # 100%对应绘图区域右侧,+20px即为固定间隙
    'xanchor': 'left'     # 让图例的左边缘对齐到该位置,保证间隙准确
}

这样设置后,无论图表宽度如何动态调整,图例左侧与绘图区域右侧的间隙始终保持20像素(你可以根据需求修改20px为其他数值)。

完整的update_layout代码示例:

fig.update_layout(
    bargap=0.1,
    barmode='stack',
    yaxis={
        'side': 'right',
    },
    yaxis2={
        'title': 'PSI',
        'anchor': 'free',
        'overlaying': 'y',
        'side': 'left',
    },
    legend={
        'x': '100% + 20px',
        'xanchor': 'left'
    },
    **layout_params,
)

原理说明:Plotly支持CSS风格的带单位位置值,100%代表绘图区域的右边界,加上固定像素值后,就能确保间隙不受图表宽度变化的影响。xanchor='left'用于指定图例的对齐基准为左边缘,避免图例自身宽度影响间隙的一致性。

内容的提问来源于stack exchange,提问作者Владислав Черкасов

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 13:25:16