Plotly Express如何阻止text参数值出现在hover悬浮提示模板中
问题对应的规范解决方案
方法1:创建图表时直接配置(最推荐)
直接通过Plotly Express内置的hover_data参数控制悬浮提示的展示字段,将用作text的字段设置为False即可从hover框中彻底隐藏,不需要后续额外处理。
对应代码:
import plotly.express as px df = px.data.iris() fig = px.scatter( df, x="sepal_length", y="sepal_width", color="species", text="petal_width", # 直接传列名即可,无需调用.values hover_data={ # 保留需要展示的字段 "sepal_length": True, "sepal_width": True, "species": True, # 用作text的字段设为False,不会出现在hover提示中 "petal_width": False } ) fig.show()
如果你的使用场景必须传text=df.petal_width.values而非列名,只需要把hover_data里的petal_width换成text设为False即可,逻辑完全一致。
方法2:已创建图表后批量修改
如果图表已经生成,也可以用更简洁的统一更新写法,不需要手动拆分悬浮模板字符串:
# 支持多轨迹的通用写法,直接指定hover展示的变量即可 fig.update_traces(hovertemplate="sepal_length: %{x}<br>sepal_width: %{y}<br>species: %{marker.color}<extra></extra>")
两种方法都比手动拆分拼接hovertemplate的写法更简洁易维护,也符合Plotly的官方设计规范。
内容的提问来源于stack exchange,提问作者Janosh
相关产品推荐
相关产品推荐

