1

我嘗試使用角圖表把這個數據庫火力地堡陣列成AngularChart

enter image description here

是雷達圖表。

我想知道如何將我的Firebase陣列變成與這種角度圖陣列格式兼容的新陣列?

$scope.labels =["Eating", "Drinking", "Sleeping", "Designing", "Coding", "Cycling", "Running", "Running", "Running", "Running"]; 
      $scope.data = [[12,14,23,56,64,34,46,34,76,12]]; 

enter image description here

我試過,但它未能

$scope.labels =$scope.results.$id; 
$scope.data = [$scope.results.$value]; 

編輯: 這是對數字的認識我自己的答案基地

$scope.labels = [], $scope.dataRaw = [], $scope.data = []; 

       fireBaseData.refUser().child($scope.user_info.uid).child("result") 
       .orderByValue() 

       .on("value", function(snapshot){ 
        snapshot.forEach(function(data){ 
        console.log("The "+ data.key()+" score is "+ data.val()); 
        $scope.labels.push(data.key()); 
        $scope.dataRaw.push(data.val()); 
        }); 
       }); 
       $scope.data.push($scope.dataRaw); 

回答

1

實際上,你可以通過做t他

// Initialise array 
$scope.labels = [], $scope.dataRaw = [], $scope.data = []; 

// Fetch results in form of array of object 
angular.forEach($scope.results, function (obj) { 
    $scope.labels.push(obj["$id"]); 
    $scope.dataRaw.push(obj["$value"]); 
}); 

// Store data array into new array 
$scope.data.push($scope.dataRaw); 
+0

我的'$ scope.results'這顯示在輸出 '[{ 「$值」 37.5 「的$ id」: 「物品1」, 「$優先」:空},{「$值 「34」 的$ id 「:」 item10" , 「$優先」:空},{ 「$值」 79.5 「的$ id」: 「ITEM2」, 「$優先」:空},{「$值 「53」 的$ id 「:」 項目3" , 「$優先」:空},{ 「$值」 37.5 「的$ id」: 「ITEM4」, 「$優先」:空},{「$值 「64」,$ ID 「:」 ITEM5" , 「$優先」:空},{ 「$值」:50, 「$ ID」: 「ITEM6」, 「$優先」:空},{「$值 「56」 的$ id 「:」 item7" , 「$優先」:空},{ 「$值」:60.5, 「$標識」: 「item8」, 「$優先」:空},{「$值「:52,」$ id「:」item9「,」$ priority「:null}]' –

+0

哦,那麼如果它已經有密鑰,它會容易得多。我會更新我的答案。 – digit

+0

我已經更新了我的答案。請驗證它。 – digit