Javascript 使用json数据创建图表
我有下面的JSON数据,我正试图通过这些数据创建折线图。但是,使用map函数,我能够获得Javascript 使用json数据创建图表,javascript,jquery,angularjs,json,angular-chart,Javascript,Jquery,Angularjs,Json,Angular Chart,我有下面的JSON数据,我正试图通过这些数据创建折线图。但是,使用map函数,我能够获得$scope.labels,但无法形成$scope.series和$scope.data 以下是我的JS代码: var source = [ {"DE":2,"NP":20,"BD":28,"TW":1, "end_time":"2016-07-05T07:00:00+0000","date":"01-01-2011"}, {"DE":5,"NP":11,"BD":22,"BE":2,"FJ":2
$scope.labels
,但无法形成$scope.series
和$scope.data
以下是我的JS代码:
var source = [
{"DE":2,"NP":20,"BD":28,"TW":1,
"end_time":"2016-07-05T07:00:00+0000","date":"01-01-2011"},
{"DE":5,"NP":11,"BD":22,"BE":2,"FJ":2,
"end_time":"2016-07-06T07:00:00+0000","date":"01-09-2011"},
{"DE":5,"NP":24,"BD":29,
"end_time":"2016-07-07T07:00:00+0000","date":"01-11-2011"}
]
var $scope = {};
$scope.labels = [];
$scope.data = [];
$scope.series = [];
source.forEach(function(item){
$scope.labels.push(item.end_time)
})
如何从JSON获取数据,形成如下系列和数据
$scope.series = ["DE","NP","BD","TW"]
$scope.data = [] ---> //Stuck here in forming data
如果您更改了数据的迭代方式,这将变得相当简单:
angular.forEach(source, function(item){
$scope.labels.push(item.end_time);
angular.forEach(item, function(val, key) {
if(key === 'end_time') return;
$scope.data.push(val);
$scope.series.push(key);
});
})
Angular’s将帮助您迭代对象。您只需在文档中查找Angular。有一个名为$http的模块,并且有很多示例说明如何实现您想要的功能。这是$http doc的url,感谢您调查这个问题。但我需要$scope.series作为2D数组来创建图表。示例-$scope.data=[[65,59,80,81,56,55,40],[28,48,40,19,86,27,90];和$scope.data具有重复的值