0

我创建了一个图表和一个将系列颜色更改为红色的按钮。但是,在系列颜色更改为红色后,导出图像 (PNG/JPEG/PDF/SVG) 仍显示原始颜色(蓝色)而不是新颜色(红色)。

我更改系列颜色的方式如下:

series.color = "#FF3030";
series.graph.attr({
    stroke: "#FF3030"
});
series.legend.colorizeItem(series, series.visible);
$.each(series.data, function (i, point) {
    point.graphic.attr({
        fill: "#FF3030"
    });
});
series.redraw();

我希望导出的图像具有新颜色(红色)。代码在这里共享。如果用户以编程方式更改线宽,也会发生同样的问题。任何人都可以帮我解决这两个问题,即在导出图像时导出新的颜色和宽度。

提前致谢!

亚历克斯

4

1 回答 1

1

当您导出图表时,它会再次创建。因此,像颜色这样的动态元素(在 SVG 中修改)被跳过。您需要使用 series.update() 然后导出的图像将是正确的。

http://jsfiddle.net/anVxk/2/

 series.update({
        color:'red'
    });

http://api.highcharts.com/highcharts#Series.update()

于 2013-06-11T09:52:33.677 回答