Javascript 在flot中动态创建数据集
我想为图形动态创建数据集。现在我得到了类似的东西,它按预期工作,但我不知道数组的长度,所以我不能使用它,当我在数据对象中尝试循环时,它失败了。有什么建议吗Javascript 在flot中动态创建数据集,javascript,jquery,dynamic,flot,Javascript,Jquery,Dynamic,Flot,我想为图形动态创建数据集。现在我得到了类似的东西,它按预期工作,但我不知道数组的长度,所以我不能使用它,当我在数据对象中尝试循环时,它失败了。有什么建议吗 var month=new Array("Jan","Feb","Mar","Apr","Maj","Jun","Jul","Aug","Sep","Okt","Nov","Dec"); var day =new Array(); var mon =new Array(); var pass =new Array(); var bug =ne
var month=new Array("Jan","Feb","Mar","Apr","Maj","Jun","Jul","Aug","Sep","Okt","Nov","Dec");
var day =new Array();
var mon =new Array();
var pass =new Array();
var bug =new Array();
_.each(data, function(data){
var date = new Date(data['timestamp']);
mon.push(date.getMonth());
day.push(date.getDate());
pass.push(data['pass']);
bug.push(data['bug']);
});
var datasets = {
"Pass": {
label: "Pass",
data: [[""+month[mon[0]]+"-"+day[0]+"", pass[0]], [""+month[mon[1]]+"-"+day[1]+"", pass[1]], [""+month[mon[2]]+"-"+day[2]+"", pass[2]], [""+month[mon[3]]+"-"+day[3]+"", pass[3]], [""+month[mon[4]]+"-"+day[4]+"", pass[4]]]
},
"Bug": {
label: "Bug",
data: [[""+month[mon[0]]+"-"+day[0]+"", bug[0]], [""+month[mon[1]]+"-"+day[1]+"", bug[1]], [""+month[mon[2]]+"-"+day[2]+"", bug[2]], [""+month[mon[3]]+"-"+day[3]+"", bug[3]], [""+month[mon[4]]+"-"+day[4]+"", bug[4]]]
}
};
在生成数据集之前先生成数据对象。不能在数据集内部循环,但可以在外部循环 或者,您可以从数据集中生成一个对象,然后使用JSON.Stringify()将其创建 编辑以显示如何执行第二步,代码可能不是100%正确,因此请根据您的场景进行调整:
var dataset= new Object();
dataset.label = "Bug";
foreach(var i in DatestoAdd){
dataset.Dates.add(DatestoAdd[i]);
}
JSON.Stringify(dataset);
stringify中的大写字母S将导致错误,它应该是小写的。