我有一个高图表图表,其中包含一系列面积图和一个线图,图表也具有初始背景颜色。该图表有一种方法可以通过单击图例来打开和关闭区域和背景颜色(请参阅工作jsfiddle)。除了当您关闭区域/背景颜色并尝试导出图表时,一切正常。导出始终显示原始背景颜色。
http://jsfiddle.net/lamarant/BHkmw/
更改背景颜色的代码如下所示:
if (doHide) {
this.chart.plotBackground.attr({
fill: '#fff'
});
} else {
this.chart.plotBackground.attr({
fill: '#000'
});
}
有什么想法吗?
答案 0 :(得分:3)
事实上,在导出期间,图表会再次生成,因此不包括动态选项(如attr())。因此,您可以设置全局变量,它将保持“当前”背景,并在导出选项(chartOptions)中使用load事件,这将设置正确的背景。
exporting: {
chartOptions: {
chart: {
events: {
load: function () {
this.plotBackground.attr({
fill: globalBackground
});
}
}
}
}
},