在highcharts中动态更改点的颜色

时间:2013-04-29 19:26:32

标签: javascript json highcharts

我已经能够动态地更改图表中点的颜色,但是当我将鼠标悬停在该点上时,该点的颜色将变为以前的颜色。

我有一个小提琴:jfiddle

$(function () {
var chart = new Highcharts.Chart({
    chart: {
        renderTo: 'container'
    },
    xAxis: {
        categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
    },

    series: [{
        data: [29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4]        
    }]
});

// the button handler
$('#button').click(function() {

    chart.series[0].data[2].graphic.attr({ fill: '#FF0000' });        
    chart.redraw();
});

如何在图表中动态更改点的颜色?

3 个答案:

答案 0 :(得分:7)

我认为您正在寻找动态更新标记颜色。

您可以使用此

的更新功能
chart.series[0].data[0].update();

以下是jsFiddle供您参考。我希望这对你有用。

答案 1 :(得分:3)

这就是你要找的东西吗?

http://jsfiddle.net/gh/get/jquery/1.7.1/highslide-software/highcharts.com/tree/master/samples/highcharts/plotoptions/series-marker-states-select-fillcolor/

plotOptions: {
    series: {
        allowPointSelect: true,
        marker: {
            states: {
                select: {
                    fillColor: 'red',
                    lineWidth: 0
                }
            }
        }
    }
}

答案 2 :(得分:-1)

它对我有用:

chart.series[0].update();

(所选答案不是)