var datas = [{ "_id" : { "$oid" : "4feeaa97cb675ea1a62cf64a"} , "Amount" : 35.0 , "Category_ID" : "Vegetables"}, { "_id" : { "$oid" : "4feeaaafcb675ea1a62cf64b"} , "Amount" : 55.0 , "Category_ID" : "Vegetables"}]; // these data are from database...
我想将其指定为,
var obj = {"row": datas};
但是当我使用时,它不起作用,
var data = new google.visualization.DataTable();
data.addColumn('string','Category_ID');
data.addColumn('number','Amount');
data.addRows([
[obj.row[0].Category_ID, obj.row[0].Amount],
[obj.row[1].Category_ID, obj.row[1].Amount],
[obj.row[2].Category_ID, obj.row[2].Amount]
]);
答案 0 :(得分:2)
这应该有效:
var data = new google.visualization.DataTable();
data.addColumn('string','Category_ID');
data.addColumn('number','Amount');
data.addRows([
[obj.row[0].Category_ID, obj.row[0].Amount],
[obj.row[1].Category_ID, obj.row[1].Amount]
]);
这是因为您的数据阵列只有2个元素,但您尝试访问三个元素。
答案 1 :(得分:2)
如果你不知道你有多少行,你可以这样做:
data.addRows(obj.row.map(function(el) {
return [el.Category_ID, el.Amount];
}));