Google チャート データを生成し、json エンコード形式で返す php スクリプトがあります。jQuery $.get() メソッドを使用して Google チャートにロードされます。次のように、戻りデータを 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 スクリプトから返されたデータは正しいため、期待どおりです)。
これは少し奇妙です。変数からロードされたときにグラフが機能しない理由を知っている人はいますか?