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

如何在不修改数据集的情况下修改Plotly图表的悬停文本格式?

Plotly 自定义悬停内容格式解决方案

不用修改数据集,直接通过hovertemplate参数就能实现你要的悬停格式——hovermode只是控制悬停的显示模式,无法自定义内容格式,而hovertemplate才是自定义悬停内容的核心工具。

关键实现思路

  • 日期格式化:用Plotly内置的日期格式语法%b, %Y,生成「月份缩写, 年份」的样式
  • Y轴百分比:在模板中直接给数值拼接%符号,无需改动原始数据

代码示例

Plotly Express 版本

import plotly.express as px
import pandas as pd

# 模拟你的数据集(无需修改原数据,仅作示例)
df = pd.DataFrame({
    'Date': pd.date_range('2022-11-16', periods=5),
    'Rate': [80.8, 75.2, 82.5, 78.1, 81.3]
})

fig = px.line(df, x='Date', y='Rate')
# 自定义悬停模板
fig.update_traces(hovertemplate='Date: %{x|%b, %Y}<br>Rate: %{y} %<extra></extra>')
# <extra></extra>用于隐藏默认的trace名称,避免多余内容

fig.show()

Graph Objects 版本

import plotly.graph_objects as go
import pandas as pd

df = pd.DataFrame({
    'Date': pd.date_range('2022-11-16', periods=5),
    'Rate': [80.8, 75.2, 82.5, 78.1, 81.3]
})

fig = go.Figure()
fig.add_trace(go.Scatter(
    x=df['Date'],
    y=df['Rate'],
    hovertemplate='Date: %{x|%b, %Y}<br>Rate: %{y} %<extra></extra>'
))

fig.show()

模板语法说明

  • %{x|%b, %Y}:对X轴日期值应用格式化,%b输出月份缩写(如Nov),%Y输出4位年份
  • %{y} %:直接调用Y轴的Rate数值,后面拼接%符号
  • <extra></extra>:移除默认显示的trace名称,让悬停内容更简洁

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 19:31:05