我有一个生成谷歌图表数据的PHP脚本,并以json编码格式返回。它使用jQuery $ .get()方法加载到谷歌图表中。当我将返回数据传递给google“ arrayToDataTable ”函数时,如下所示:
var googleChartData = google.visualization.arrayToDataTable(chartData);
我收到此错误:
所以,我所做的是将我的变量“ chartData ”的值转储,我得到以下内容:
所以,我所做的是,将这些数据从控制台窗口手动复制到“ arrayToDataTable ”函数中,如下所示:
var googleChartData = google.visualization.arrayToDataTable([["Date Range","0001\/102\/0 Available","0001\/102\/0 Unavailable","0001\/102\/1 Available","0001\/102\/1 Unavailable"],["02\/10\/2013",0,1,110,11],["03\/10\/2013",0,1,189,11],["04\/10\/2013",0,1,189,11],["06\/10\/2013",0,1,189,10],["07\/10\/2013",0,1,187,10],["08\/10\/2013",186,11,0,1],["09\/10\/2013",186,11,0,1],["10\/10\/2013",0,1,186,11],["11\/10\/2013",0,1,204,11],["13\/10\/2013",0,1,204,11]]);
现在图表呈现(正如预期的那样,因为我的php脚本返回的数据是正确的):
这有点奇怪;有没有人知道为什么图表从变量加载时不起作用?
答案 0 :(得分:9)
我已经通过更改 arrayToDataTable 这一行解决了这个问题:
var googleChartData = google.visualization.arrayToDataTable($.parseJSON(chartData));