我正在使用HighCharts在网页上呈现两个图表。我使用jquery动态下载每个图表的数据,并使用setChart
函数设置两个图表。
function setChart(chart, name, data){
while (chart.series.length > 0) {
chart.series[0].remove(true);
}
for (var i = 0; i < data.length; i++) {
chart.addSeries({
name: name[i],
data: data[i],
});
}
}
这里的问题是,当我使用jquery下载新数据时(=不刷新页面),所有行颜色都会改变。
如何防止HighCharts更改线条(=系列)颜色?
答案 0 :(得分:1)
您可能想要创建一个包含所需颜色的数组。让我们称之为colors
。它必须有足够数量的元素,否则你将会出错。
function setChart(chart, name, data){
while (chart.series.length > 0) {
chart.series[0].remove(true);
}
for (var i = 0; i < data.length; i++) {
chart.addSeries({
name: name[i],
data: data[i],
color: colors[i],
});
}
}
答案 1 :(得分:0)
我将这两件事混合在一起:
color: Highcharts.getOptions().colors[i % 10]
工作正常。唯一可能很酷的是它可能超过10种颜色,但我不想自己制作它们^^
非常感谢;)