在Google Chart API中键入数字不匹配的数字

时间:2014-06-23 12:17:08

标签: javascript google-visualization

我有一个数组,第二列的值为2050.878456,在我的javascript函数中创建一个区域图我做了以下

function drawVisualization() {
    var data = null;
    data = new google.visualization.DataTable();
    data.addColumn('string', 'Date');
    data.addColumn('number', 'Value');
    data.addRows(myArrayCreated);
    // Create and draw the visualization.
    var ac = new google.visualization.AreaChart(document
            .getElementById('visualization_chart'));
    ac.draw(data, {
        title : 'Results',
        isStacked : true,
        width : 700,
        height : 400,
        vAxis : {title : "kW"},
        hAxis : {title : "Day"}
    });

}

然而我收到此错误Type mismatch. Value 2050.878456 does not match type number in column index 1但是它也不能是字符串类型,为什么我会收到此错误以及如何修复它?

2 个答案:

答案 0 :(得分:8)

尝试将Value作为string传递,然后再执行parseFloat。像这样:

data.addColumn('string', 'Value');

for (var i=0;i<myArrayCreated.length;i++){
    myVal = parseFloat($.trim(myArrayCreated[i][1])); 
    data.addRow([i, {v: myVal, f: myval.toFixed(6)}]); 
}

答案 1 :(得分:2)

我发现了同样的问题。

不工作:

try {
// some code
}
catch (ExceptionCode &ex) 
{
  // ExceptionCode type of exception
}
catch (...) {
  // how do I know which exception code so that I may check who did throw
}

工作:

data.addRow([v, obd[v].engine_rpm]);

wtf