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

Plotly绘制ECDF图时add_hline添加的水平线图例不显示怎么办

问题原因
  • Plotly 中add_hline/add_vline绘制的辅助参考线默认不会自动加入图例渲染队列,你代码里添加的visible=True参数仅控制参考线本身在绘图区域的显示/隐藏状态,和图例条目生成逻辑完全无关,因此配置后不会生效。
  • 原代码存在数值笔误:标注为75%的参考线传入了y=30参数,会导致参考线位置和标注含义不匹配,实际应传入y=75对应75%分位的位置。
修复方案

调用add_hline时显式传入showlegend=True参数,即可将对应参考线注册为图例条目;如果需要固定图例顺序,确保两条参考线作为第2、3项展示,可以额外传入legendrank参数控制排序权重,数值越小在图例中排序越靠前。

修正后的完整代码:

fig_cdf = px.ecdf(df['Timespan'], color_discrete_sequence=['blue'],ecdfnorm='probability', orientation='h')
# 添加90%参考线,开启图例展示,设置排序权重为2,排在原始CDF曲线(默认权重1)之后
fig_cdf.add_hline(y=90, line_width=2, line_color="red", name='90%', showlegend=True, legendrank=2)
# 修正y值为75,开启图例展示,设置排序权重为3,排在第三位
fig_cdf.add_hline(y=75, line_width=2, line_color="red", name='75%', showlegend=True, legendrank=3)
fig_cdf.update_layout(width=500, height=500)
fig_cdf.show()

上述配置默认支持图例交互:点击图例中对应参考线的条目,可以切换该参考线的显示/隐藏状态,和原生图例交互逻辑一致。

内容的提问来源于stack exchange,提问作者Demi

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 12:33:07