4

考虑以下情况:

    chart.options.chart.backgroundColor= {
        linearGradient: [0, 0, 0, 400],
        stops: [ [0, 'rgb(96, 96, 96)'], 
        [1, 'rgb(16, 16, 16)'] ]
    };
    chart.redraw():

都在这里:http: //jsfiddle.net/S8f86/3/

是否可以通过事件更改图表的背景颜色?

4

2 回答 2

5

Highcharts 没有执行此操作的 API 调用。但是,您可以获取底层元素并对它们应用一些 css 样式。例如

chart.chartBackground.css(
        {
            color: '#555555',
        });

http://jsfiddle.net/xzUcC/

由于您直接操作 dom,因此无需在图表上调用 redraw()。

正如另一张海报所提到的,您可以按如下方式进行毕业背景:

 var gradient = {
        linearGradient: [0, 0, 0, 400],
                 stops: [ [0, 'rgb(96, 96, 96)'], 
                          [1, 'rgb(16, 16, 16)'] ]
        };
        chart.chartBackground.attr({
                 fill:gradient
        });
于 2013-03-15T11:40:57.050 回答
5

您可以使用图表渲染器和 svg 属性。

http://jsfiddle.net/S8f86/4/

this.renderer.button('Change background color', 74, 30, function(){

                        var gradient = {
                            linearGradient: [0, 0, 0, 400],
                            stops: [ [0, 'rgb(96, 96, 96)'], 
                                     [1, 'rgb(16, 16, 16)'] ]
                        };

                    chart.chartBackground.attr({
                        fill:gradient
                    });

                    }).add();
于 2013-03-15T12:14:14.697 回答