2015-11-28 30 views
0

我正在嘗試使用角度圖來顯示圖表。但我得到以下錯誤:TypeError:無法讀取未定義的屬性「數據集」 - 角度圖

類型錯誤:不能在Object.i.Type.extend.initialize(http://cdnjs.cloudflare.com/ajax/libs/Chart.js/1.0.1-beta.2/Chart.min.js:9:27506) 的對象在Object.e.Type(http://cdnjs.cloudflare.com/ajax/libs/Chart.js/1.0.1-beta.2/Chart.min.js:9:9713) 讀的不確定 財產「數據集」 .S(http://cdnjs.cloudflare.com/ajax/libs/Chart.js/1.0.1-beta.2/Chart.min.js:9:12974) 在E(匿名函數),酒吧(http://cdnjs.cloudflare.com/ajax/libs/Chart.js/1.0.1-beta.2/Chart.min.js:9:13316

我的代碼:

app.controller('graphController', ['$scope', '$kinvey','$location', function($scope, $kinvey, $location) { 
$scope.popula = function(){ 
    var query = new $kinvey.Query(); 
    query.equalTo('idColetor', 659238569);       
    query.descending('tsmilliseconds').limit(7); 
    var promise = $kinvey.DataStore.find('dataBase', query); 
    promise.then(function(response) { 
    arrayVelocidade = []; 
    for(var j = response.length - 1; j >= 0 ; j--) {   
     arrayVelocidade.push(response[j].veloc);  
    } 
    drawLineChart(arrayVelocidade); 


}); 
}; 


function drawLineChart(arrayVelocidade){ 

    $scope.lineChartData = { 
     labels: ["30", "25", "20", "15", "10", "05", "0"], 
     datasets: [ 
     { 
     label: "Velocidade", 
     fillColor: "rgba(220,220,220,0.2)", 
     strokeColor: "rgba(220,220,220,1)", 
     pointColor: "rgba(220,220,220,1)", 
     pointStrokeColor: "#fff", 
     pointHighlightFill: "#fff", 
     pointHighlightStroke: "rgba(220,220,220,1)", 
     data: arrayVelocidade 
     } 
     ] 
    }; 
    $scope.activeData = $scope.lineChartData; 
} 



} 
]); 

在索引頁我叫:

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.7/angular-route.js"></script> 
<script src="http://da189i1jfloii.cloudfront.net/js/kinvey-angular-1.5.1.min.js"></script> 
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/Chart.js/1.0.1-beta.2/Chart.min.js"></script> 
<script type="text/javascript" src="dist/angular-chartjs.min.js"></script> 
<script src="js/jquery.js"></script> 

任何信息都會有幫助。謝謝 !

回答

3

角度圖預期輸入數據將以某種格式(與Chart.js不完全相同)。嘗試格式化您的輸入數據看起來像樣品在http://jtblin.github.io/angular-chart.js/

angular.module("app", ["chart.js"]).controller("LineCtrl", function ($scope) { 

    $scope.labels = ["January", "February", "March", "April", "May", "June", "July"]; 
    $scope.series = ['Series A', 'Series B']; 
    $scope.data = [ 
    [65, 59, 80, 81, 56, 55, 40], 
    [28, 48, 40, 19, 86, 27, 90] 
    ]; 
}); 

注意data只是一個數組的數組,而不是一個對象像chart.js之和labels是一個單獨的數組。

相關問題