如何为Highcharts的tooltip添加更多数据?
解决Highcharts Tooltip显示额外文本的问题
你之前尝试的point.this是错误的引用方式,要在tooltip中显示自定义额外文本,只需配置tooltip的formatter函数,正确访问数据点的自定义属性即可,具体步骤如下:
- 保留现有数据结构:你已经在data数组中为每个数据点添加了
desc自定义字段,这部分无需修改:
data: [ {x:'Spiderman',y:3.7,desc:'d1'}, {x:'Darth Vader',y:15.0,desc:'d2'}, {x:'Mickey Mouse',y:34.67,desc:'d3'}, {x:'Luke Skywalker',y:32.4,desc:'d4'}, {x:'Buck Rogers',y:13.0,desc:'d5'}, {x:'Ace Ventura',y:5.9,desc:'d5'}, {x:'Captain Marvel',y:23.4,desc:'d5'} ]
- 配置Tooltip的Formatter函数:在Highcharts初始化配置中添加
tooltip选项,通过formatter函数自定义tooltip内容,使用this.point访问当前数据点,再通过options.desc获取自定义字段:
tooltip: { formatter: function() { return `<strong>${this.point.x}</strong><br/> 数值: ${this.point.y}<br/> 额外描述: ${this.point.options.desc}`; } }
如果直接访问this.point.desc能生效,也可以简化使用,但this.point.options.desc是更稳妥的写法,因为自定义属性会被存储在数据点的options对象中。
- 整合配置:将上述tooltip配置加入你的Highcharts代码,hover数据点时就能看到包含额外文本的tooltip了。
内容的提问来源于stack exchange,提问作者Bill Roberts
相关产品推荐
相关产品推荐

