PHP数组到JSON使用Google图表工具绘制柱状图


PHP array to JSON plotting column chart with Google Chart Tools

我已经在这里和其他网站上阅读了多个问题/答案,但我就是无法让它发挥作用。

我有一个包含日期和计数的数据库。使用PHP,我构建了一个嵌套数组,该数组在编码后变成有效的json。至少根据http://jsonlint.com/.json(从我所看到的)看起来像https://google-developers.appspot.com/chart/interactive/docs/php_example.

我想做的唯一一件事就是用谷歌API创建一个柱状图(应该没那么难)。。。我想要y轴上的计数(数量)和x轴上的日期。

这里有一个json输出示例(相信我,我已经试过几个了):

{"cols":[{"id":","label":"Date","type":"Date"},{}]}、{"c":[{"v":"2013-02-11"}、{"v":"18"}]},{"c":[{"v":"2013-02-12"}、{"v":"8"}]},{,{"c":〔{"v":"2013-02-15"},{"v":"6674"}〕},}{"}]},{"c":[{"v":"2013-02-20"},{"v":"653"}]},{"c":[{"v":"2013-02-21"},}"v"v":"647"}]},{"c":〔{"v":"2013-02-25"},{"v":"638"}〕},}"c":〔{"v":"2013-02-26"},{"v":"636"}〕〕}8"}]},{"c":[{"v":"2013-03-02"},{v":"640"}]},{"c":〔{"v":"2013-03-07"},{"v":"16"}〕},},{"c":[{"v":"2013-03-12"},{},{"c":〔{"v":"2013-03-17"},{"v":"15"}〕},},{"c":[{"v":"2013-03-22"},{]},{"c":[{"v":"2013-03-27"},{"v":"1546"}]},{2"}]},{"c":[{"v":"2013-04-01"},{"v":"1558"}]},{"c":[{"v":"2013-04-06"},{"v":"1626"}]},{"c":[{"v":"2013-4-07"}1"}]},{"c":[{"v":"2013-04-11"},{"v":"1537"}]},{"c":〔{"v":"2013-04-16"},{"v":"1536"}〕}

API脚本

// Load the Visualization API and the piechart package.
google.load('visualization', '1', {'packages':['corechart']});
// Set a callback to run when the Google Visualization API is loaded.
google.setOnLoadCallback(drawChart);
function drawChart() {
  var jsonData = $.ajax({
      url: "chartjson.php",
      dataType:"json",
      async: false
      }).responseText;
  // Create our data table out of JSON data loaded from server.
  var data = new google.visualization.DataTable(jsonData);
  // Instantiate and draw our chart, passing in some options.
  var chart = new google.visualization.ColumnChart(document.getElementById('chart_div'));
  chart.draw(data, {width: 400, height: 240});
}

我正认真考虑用excel制作图表,并每天上传截图。

关于如何解决这个问题有什么想法吗?我接近了吗(别刻薄)?

非常感谢您的帮助!

感觉有点傻。。。经过进一步的挖掘,我发现我必须使用"字符串"来表示日期,而不是日期,这就解决了整个问题。