Javascript 数组中标签数和列数之间的动态图不匹配

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" ] }, {

无法让动态图工作

我使用PHP填充了一个数组,如下所示:

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]