在flot Chart中选择Bar的颜色

时间:2016-01-13 11:13:01

标签: html bar-chart flot

我有一个带有随机数的数组,我想在flot图表中将这个数组中的数据分成好(绿色条形)或坏(颜色红色条形)。这是我的代码,但它不起作用。有人可以帮帮我吗?

    

<script>
    var Max = 20;
    var Data = [];
    for (var i=0;i<Max;i++){
        Data [i]=Math.floor((Math.random()*3000)+1500);
    }
    var myData = [];
    for(var i=0;i<Max;i++){
       if(Data[i]<2000||Data[i]>2500){
            myData [i]= {color: "red", data:[Data[i],i]};
       }
       else {
            myData [i]= {color: "green", data:[Data[i],i]};
       }
    };
    var options = {
        bars:{ 
              show: true,
              horizontal: true,
        },
        yaxis: {
                tickLength:0,
                ticks:[]
        }, 
        xaxis: {
                tickLength:0,
                ticks:[]
        },
        grid: {
               clickable: true,
               hoverable: true,
               borderWidth: 2
        }
    }

    $(document).ready(function(){    
    $.plot($("#mycanvas"),[{data:myData}],options);
    });
</script>

1 个答案:

答案 0 :(得分:1)

在构建系列时,需要使data对象成为一组值:

data: [[i, Data[i]]]

Flot API Data Series部分(注意数据对象的格式):

  

除数据外,您不必指定其中任何一个,其余的都是   将获得默认值的选项。通常,您只需指定   标签和数据,如下所示:

{
    label: "y = 3",
    data: [[0, 3], [10, 3]]
}

This JSFiddle演示了如何使用示例代码构建数据数组。