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

X轴为日期时间类型的图表悬停时显示日期标签的实现问题

修复方法

你当前拿到的posx是日期序列化后的浮点数值,只需要把它反序列化为datetime对象再格式化输出即可,操作步骤如下:

  • 先导入matplotlib日期处理模块:
    import matplotlib.dates as mdates
  • 将你原来的代码行替换为以下内容,即可在悬停标签显示格式化后的日期时间:
    text = f'{line.get_label()}: ({mdates.num2date(posx).strftime("%Y-%m-%d %H:%M:%S")}, {posy:.2f})'

补充说明

  • 你可以根据自己的需求调整strftime内的日期格式,比如仅需要显示年月日的话,修改为"%Y-%m-%d"即可
  • 如果你是自定义的日期转数值规则(非matplotlib默认的date2num机制),对应调整数值转日期的逻辑即可:
    • 若使用Unix时间戳序列化,改用datetime.fromtimestamp(posx).strftime("你的格式")
    • 若使用pandas toordinal() 序列化,改用datetime.fromordinal(int(posx)).strftime("你的格式")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 13:06:04