谷歌图表不播放,不显示任何错误

Google Chart Not Diplaying, Not showing any errors

本文关键字:显示 任何 错误 播放 谷歌      更新时间:2023-09-26

我正在尝试使用API绘制Google柱形图。数据来自 Web 服务,作为 JSON 字符串,我对其进行解析,然后操作以添加数据,然后显示图表,如下所示。

var jsond = JSON.parse(response.d);
                var data = null;
                data = new google.visualization.DataTable();
                for (var i = 0; i < jsond["cols"].length; i++) {
                    data.addColumn((jsond["cols"][i].type == 'number' ? 'number' : 'string'), null, jsond["cols"][i].id);
                }
                data.addRows(jsond["rows"].length);
                for (var i = 0; i < jsond["rows"].length; i++) {
                    data.setCell(i, 0, "'" + jsond["rows"][i].finmonth.toString() + "'");
                    data.setCell(i, 1, parseFloat(jsond["rows"][i].Target));
                    data.setCell(i, 2, parseFloat(jsond["rows"][i].Proposal));
                    data.setCell(i, 3, parseFloat(jsond["rows"][i].ContractTotal));
                    data.setCell(i, 4, parseFloat(jsond["rows"][i].Budget));
                    data.setCell(i, 5, parseFloat(jsond["rows"][i].flag));
                }
                var options = {
                    title: 'The road thus far',
                    vAxis: { title: "Totals" },
                    hAxis: { title: "Financial Month" }
                };
                var chart = new google.visualization.ColumnChart(document.getElementById('chart_div'));
                chart.draw(data, options);

现在的问题是它接受数据并且没有返回的错误。我已经检查了数据后的数据,并在数据表中加载了data.toJSON()并且它与谷歌规定的数据应该的方式相匹配。有关我的数据,请参见下文,请记住,我在下面的示例中只添加了 1 个数据行,有 12 个标准行。

{"cols":[{"id":"finmonth","label":"","pattern":"","type":"string"},
{"id":"Target","label":"","pattern":"","type":"number"},
{"id":"Proposal","label":"","pattern":"","type":"number"},
{"id":"ContractTotal","label":"","pattern":"","type":"number"},
{"id":"Budget","label":"","pattern":"","type":"number"},
{"id":"flag","label":"","pattern":"","type":"number"}],
"rows":[{"c":[{"v":"'2013/1'","f":null},{"v":0,"f":null},{"v":37,"f":null},{"v":4696,"f":null},{"v":4733,"f":null},{"v":0,"f":null}]}],
"p":null}

那么我错过了什么?因为如果我在 javascript 数组中硬编码测试数据,图表会显示...... :/

好的,

事实证明我的代码没有任何问题。图表位于 jquery 手稿中,这导致了问题。要解决此问题,请仅在手风琴全部准备就绪后渲染图表,即

$('div').accordion();

已被调用。然后,它们应正确呈现。