如何在Highcharts线性回归散点图的tooltip中隐藏系列名称
解决Highcharts散点图Tooltip隐藏系列名称的问题
我知道你现在卡在怎么把散点图tooltip里的“Observations”去掉了,其实这个tooltip.formatter的放置位置很关键,我给你两种可行的方案:
方案一:全局配置Tooltip
把tooltip配置放在图表的根层级(和xAxis、yAxis、series同级),这样所有启用鼠标跟踪的系列都会使用这个格式化规则。因为你的回归线已经设置了enableMouseTracking: false,所以只会影响散点图:
Highcharts.chart('container', { xAxis: { min: -0.5, max: 5.5 }, yAxis: { min: 0 }, title: { text: 'Scatter plot with regression line' }, // 全局Tooltip配置放在这里 tooltip: { formatter: function() { return this.x + ', ' + this.y; } }, series: [{ type: 'line', name: 'Regression Line', data: [[0, 1.11], [5, 4.51]], marker: { enabled: false }, states: { hover: { lineWidth: 0 } }, enableMouseTracking: false }, { type: 'scatter', name: 'Observations', data: [1, 1.5, 2.8, 3.5, 3.9, 4.2], marker: { radius: 4 } }] });
方案二:单独给散点系列配置Tooltip
如果你只想让散点图应用这个格式化规则(避免影响未来可能添加的其他系列),可以把tooltip直接写在散点系列的配置里:
Highcharts.chart('container', { xAxis: { min: -0.5, max: 5.5 }, yAxis: { min: 0 }, title: { text: 'Scatter plot with regression line' }, series: [{ type: 'line', name: 'Regression Line', data: [[0, 1.11], [5, 4.51]], marker: { enabled: false }, states: { hover: { lineWidth: 0 } }, enableMouseTracking: false }, { type: 'scatter', name: 'Observations', data: [1, 1.5, 2.8, 3.5, 3.9, 4.2], marker: { radius: 4 }, // 只给散点系列配置Tooltip tooltip: { formatter: function() { return this.x + ', ' + this.y; } } }] });
两种方案都能实现你想要的效果,把tooltip里的系列名称去掉,只显示x和y坐标值。之前没成功大概率是因为把tooltip.formatter放错了层级,比如放到了某个系列的子配置外,或者放到了回归线系列里(但它已经禁用了鼠标跟踪,所以不会生效)。
内容的提问来源于stack exchange,提问作者curious1
相关产品推荐
相关产品推荐

