为什么线条没有显示在高位图中?

时间:2017-01-17 07:37:31

标签: javascript jquery highcharts

我正在尝试使用highcharts制作圆环图。使用onmouseover我想隐藏所有标签并显示所选数据标签。我能够做到这一点 使用这些行:

that.series.dataLabelsGroup.hide();
that.dataLabel.show();

但它也隐藏了我的线,我连接到图表的数据值。为什么线条不显示在高图中?这是我的代码:

// Mouseover handler
function(e) {
    var that = this;
    var series = this.series;
    console.log(series);

    for (var i = 0; i < series.data.length; i++) {
        var point = series.data[i];
        console.log(point)

        if (point == this) {
            console.log('yes');
            point.update({
                color: series.chart.options.colors[this.index]
            });
        } else {
            point.update({
                color: '#CCCCCC'
            });
        }
    }
    that.series.dataLabelsGroup.hide();
    that.dataLabel.show();

    return false;
}

的jsfiddle http://jsfiddle.net/nyhmdtb8/11/

1 个答案:

答案 0 :(得分:0)

您不必直接使用svg元素,但可以在点更新期间隐藏所有必需的数据标签。

显示数据标签:

point.update({
                color: series.chart.options.colors[this.index],
                dataLabels: {
                  enabled: true
                }
              });

并隐藏数据标签:

point.update({
                color: '#CCCCCC',
                dataLabels: {
                  enabled: false
                }
              });

示例:http://jsfiddle.net/nyhmdtb8/12/