通过图表功能为图表上的一个系列和一个点启用Highcharts数据

时间:2018-05-18 16:34:21

标签: javascript highcharts

我的气泡图上有一点我要启用dataLabels。这是我系列中的最高价值。在我的图表代码的末尾,我有一个函数,我曾经处理过一些点状态,但数据不起作用,我似乎无法找到如何打开它的例子。

function(chart) {
  chart.series[0].data[1].setState('select');
  chart.series[0].data[1].dataLabels().enabled = true;
}

所以第一个工作(setState),没有问题(所以我知道我很接近),但第二个不起作用。

仅供参考,系列和数据点永远不会从0系列和数据1点改变。所以这次我不需要可重复使用的修复。

1 个答案:

答案 0 :(得分:0)

您不必使用回调函数来执行此操作。而不是你只需要为特定系列定义series.dataLabels.formatter函数。我准备了一个示例,其中formatter函数仅返回系列的最高值的数据标签。这是代码:

series: [{
    name: 'Series 1',
    data: [43934, 52503, 57177, 69658, 97031, 119931, 137133, 154175],
    dataLabels: {
        enabled: true,
        formatter: function() {     
             var highest = Math.max.apply(null, this.series.yData)
             return this.y === highest ? highest : ''
        }
    }
}

您可以在此示例中看到它的工作原理:https://jsfiddle.net/upLpj0tk/

API参考:https://api.highcharts.com/highcharts/series.line.dataLabels.formatter