我有一个带有随机数的数组,我想在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>
答案 0 :(得分:1)
在构建系列时,需要使data
对象成为一组值:
data: [[i, Data[i]]]
从Flot API Data Series部分(注意数据对象的格式):
除数据外,您不必指定其中任何一个,其余的都是 将获得默认值的选项。通常,您只需指定 标签和数据,如下所示:
{ label: "y = 3", data: [[0, 3], [10, 3]] }
This JSFiddle演示了如何使用示例代码构建数据数组。