绘制图表后,无法在highCharts中更改系列edgeColor

时间:2017-12-07 21:18:10

标签: highcharts 3d

我根据一些用户输入(比如选择某个系列)尝试在绘制图表后更改3d柱形图中的系列的edgeColor属性。我能够做到这一点是使用borderColor属性的二维柱形图。我的数据加载代码段如下所示:

$.each(seriesDataArray,function(i,val){
   console.log (val);
   chartDetails.series.push({ "size" : val.datasetSizeVerified , "data" : val.data});               
};

我试图稍后在代码中修改一个函数中的edgeColor:

function highlightChartSeries(currentTableDisplayIndex){
        if (myChart){
            $.each(myChart.series,function(i,val){                                  
                val.edgeColor = "green" ;                               
                val.redraw();                                                    
            });                

            myChart.series[currentTableDisplayIndex].edgeColor = "red";               
            myChart.series[currentTableDisplayIndex].redraw();                                

        } 
}

同样,这在使用borderColor属性的柱形图2D中很有效。我可以在图表构造期间在原始系列对象中设置edgeColor,并且edgeColor会反映在我的原始图形中。但是,我以后不能改变它。任何帮助表示赞赏!

1 个答案:

答案 0 :(得分:0)

要向现有系列添加(或更改)某些值,您应该使用名为 update() Chart.Series 函数,并将新的配置选项对象传递给它,因为它是专门为执行这样的动作而创建的函数。请看下面的代码:

play_field = [[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]]

def print_playfield():
   for rows in play_field:
       print(*['{:<4}'.format(each) for each in rows])

我为你准备live example如何使用该功能。

祝你好运!