0

我有一个项目,我们可以动态地将线条添加到折线图(通过从图表外部的列表中选择)并且工作正常,它根据我们的“颜色”列表以正确的颜色和正确的顺序添加每条线。问题是当我们删除一行(或几行),然后添加一个新行时,使用的颜色是我们离开的“下一行”,而不是我们删除的颜色之一。

例如,我们的颜色是 1,2,3,4,5,6,7,8。用户通过添加五行来动态制作图表,因此我们使用颜色 1-5。现在用户随机删除了两条线,例如,我们只剩下颜色 1、3、4。现在用户添加了两条移动线,添加的颜色始终为 6 和 7,但我们希望添加的颜色为 2 和 5(因为它们不再被使用并且优先级更高)。这可能吗?我们可以肯定地做一个定制的解决方案,但我想看看我们是否遗漏了任何已经构建的东西。

谢谢!

4

1 回答 1

0

不幸的是,这个选项是不可能的,但是,您可以准备自己的函数,该函数将为每个系列循环,然后设置正确的颜色,如下例所示:

http://jsfiddle.net/sbochan/gJvde/1/

 function setColors(chart){
        var series = chart.series,
                 colors = chart.options.colors,
                 len = series.length-1;

                    if(flag) {
                        $.each(series,function(i,serie){
                            if(i==len) {
                                flag != flag;
                                serie.update({
                                    color: colors[i]
                                },true,true);
                            }
                            else {
                                serie.update({
                                    color: colors[i]
                                },false);
                            }
                        });
                    }
    }
于 2013-07-23T09:11:24.960 回答