我已经查看了如何在我的Google图表中获取json提要的所有线程,但是似乎没有任何效果,或者这些线程与我的问题略有不同。
更新:我试图解析我的json提要以仅显示某些列。例如,我的Feed中有“实际”和“目标”列。我希望图表仅显示“实际”列。由于后端需要过滤原因,因此我需要目标列,因此,当Feed从数据库更新时,它知道要提取的记录。
在仔细遵循Google图表的json格式并找出一种添加数据的方法之后,我仍然无法成功显示实际数据。奇怪的是,该图显示出来了,只是其中没有任何数据。我的控制台没有任何错误,我确保我的json字符串有效。我尝试记录我的json feed,以确保信息正确传递了。如代码中所示,添加了列,但是行不会显示。
我相信在我的data.addRow行中,我没有正确遍历,但似乎无法弄清楚如何正确地进入特定单元格。
function drawChart() {
$.ajax({
url: "--",
dataType:"json",
success: function (result) {
var data = new google.visualization.DataTable();
data.addColumn('string', 'Quarter');
data.addColumn('number', 'Actual');
for (var i = 0; i < result.rows.length; i++) {
data.addRow([result.rows[i], result.rows[i], result.rows[i]]);
}
这是我的json feed:
{ "cols":[ {"label":"Quarter", "type":"string"},{"label": "Actual", "type":"number"}, {"label":"Goal","type":"number"}], "rows":[ {"c":[{"v":"Q1"}, {"v":22}, {"v":30}]},
{"c":[{"v":"Q2"}, {"v":24}, {"v":30}]},
{"c":[{"v":"Q3"}, {"v":27}, {"v":30}]}
]}
您可以使用原始JSON构建DataTable:
var data = new google.visualization.DataTable(json);
然后使用DataView过滤掉“目标”列:
var view = new google.visualization.DataView(data);
view.setColumns([0, 1]);
使用DataView而不是DataTable绘制图表:
chart.draw(view, options);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句