Highstock为不同的标记设置不同的颜色

时间:2012-11-24 20:47:54

标签: javascript highcharts highstock

我正在尝试在Highstock中开发一个图表,其中每个标记都有一个单独的颜色。 当我在这样的数组中推送我的数据时:

      series.data.push([ 
       parseInt(Math.round(myDate.getTime())),
       parseInt(Math.round(myDate.getHours()))
       ]);

数据显示正确,但是当我尝试像这样设置每个数据对象中的颜色时,它无法显示点。

          series.data.push([ {          
          x:   parseInt(Math.round(myDate.getTime())),
          y:   parseInt(Math.round(myDate.getHours())),
          marker:{fillColor: 'red'}} ]);

我缺少什么?

更新:当我用firebug检查时,我可以看到系列在图表对象中设置正确。那现在为什么会出现呢? :/

2 个答案:

答案 0 :(得分:1)

这应该有效

series.data.push([ {          
    x:   parseInt(Math.round(myDate.getTime())),
    y:   parseInt(Math.round(myDate.getHours())),
    marker:{
       enabled:true,
       fillColor:'red',
       states:{
        enabled:true,
        fillColor:'red' 
       }
    } 
} ]);

答案 1 :(得分:0)

我解决了我的问题。在手动创建图表后,我不得不更改for循环中的每个标记。它看起来像这样:

            chart2.series[0].data[i].update(
                {
                    y: chart2.series[0].data[i].y,
                    marker: {
                        enabled: true,
                        fillColor: myColor,
                        states: {
                            hover: {
                                enabled: true,
                                fillColor: "black"
                            }
                        }
                    }
                }
                ,false,false);
    }

    chart2.redraw();