Javascript 数组中标签数和列数之间的动态图不匹配
无法让动态图工作 我使用PHP填充了一个数组,如下所示:Javascript 数组中标签数和列数之间的动态图不匹配,javascript,arrays,dygraphs,Javascript,Arrays,Dygraphs,无法让动态图工作 我使用PHP填充了一个数组,如下所示: data = [ { "DATA": "2016-01-22", "TOTAL": [ "7", "4", "20", "0" ] }, { "DATA": "2016-01-25", "TOTAL": [ "3", "2", "10", "0" ] }, {
data = [
{
"DATA": "2016-01-22",
"TOTAL": [
"7",
"4",
"20",
"0"
]
},
{
"DATA": "2016-01-25",
"TOTAL": [
"3",
"2",
"10",
"0"
]
},
{
"DATA": "2016-01-26",
"TOTAL": [
"1",
"1",
"4",
"0"
]
},
{
"DATA": "2016-01-27",
"TOTAL": [
"2",
"1",
"2",
"0"
]
},
{
"DATA": "2016-02-02",
"TOTAL": [
"1",
"1",
"1",
"0"
]
},
{
"DATA": "2016-02-10",
"TOTAL": [
"1",
"1",
"3",
"0"
]
}
]
然后,我将图形的数据构建为:
data.forEach(function(item) {
var adata = item.DATA;
var atotal = item.TOTAL;
graphstr1 += '[new Date("' + adata + '"),' + atotal + '],';
});
graphstr1 = graphstr1.slice(0, -1);
console.log(graphstr1);
查看控制台,数据的格式是必需的,但我总是在问题标题中看到错误
动态图代码:
g = new Dygraph(
document.getElementById("graphdiv"), [
graphstr1,
/*[new Date("2016-01-22"), 7, 4, 20, 0],
[new Date("2016-01-25"), 3, 2, 10, 0],
[new Date("2016-01-26"), 1, 1, 4, 0],
[new Date("2016-01-27"), 2, 1, 2, 0],
[new Date("2016-02-02"), 1, 1, 1, 0],
[new Date("2016-02-10"), 1, 1, 3, 0]*/
], {
labels: ["x", "Registados", "Grávidas", "Com Filhos", "Sem Filhos"]
}
);
为什么不直接使用数组而不使用自制的字符串化版本
var数据=[{data:“2016-01-22”,总计:[“7”,“4”,“20”,“0”]},{data:“2016-01-25”,总计:[“3”,“2”,“10”,“0”]},{data:“2016-01-26”,总计:[“1”,“1”,“4”,“0”]},{data:“2016-01-27”,总计:[“2”,“1”,“2”,“0”]},{data:“2016-02-02-02”,总计:[“1”,“1”,“1”,“1”,“0”},{data:“2016-02-10”,总计:[“1”,“1”,“1”,“1”,“0”],
转换=data.map(函数(a){
返回[新日期(a.DATA)].concat(a.TOTAL.map(编号));
}),
g=新动态图(
document.getElementById(“graphdiv”),
转换,
{标签:[“x”、“Registados”、“Grávidas”、“Com Filhos”、“Sem Filhos”]})代码>
尝试了您的代码,但仍然出现错误:标签数量(x、Registados、Grávidas、Com Filhos、Sem Filhos)与arrayDarn中的列数不匹配!确实如此!:)我发现我的问题是使用:g=newdygraph(document.getElementById(“graphdiv”),[graphstr1]…而不是g=newdygraph(document.getElementById(“graphdiv”),[graphstr1]