2015-10-23 37 views
0

我在c3中顯示來自json的數據時遇到了問題。 我從快遞發送的數據,我可以在./behavior 這裏是我的角度控制器得到它:Angular如何在c3中使用json的數據?

angular.module('app') 
.controller('GraphCtrl', function ($scope) { 

    d3.json('./behavior', function(err, data){ 
    if(err){ throw err; } 
    $scope.data = data; 
    console.log(data); 
    $scope.$apply(); 

    $scope.chart = c3.generate({ 
    bindto: '#behavior', 
    data: { 
     columns: [], 
     type: 'bar', 

     }, 
     bar: { 
      width: { 
       ratio: 0.4 // this makes bar width 50% of length between ticks 
      } 
     }, 
     grid: { 
      x: { 
       show: true 
      }, 
      y: { 
       show: true 
      } 
     }, 
     color: { 
      pattern: ['#FF9800', '#8BC34A', '#E040FB', '#3F51B5', '#FF4081'] 
     } 
    }); 
}); 

,我把它綁定到HTML:

<div id="graph" ng-controller="BehaviorGraphCtrl"> 
    <div id="behavior"></div> 
</div> 

我做錯了嗎?

回答

1
data: { 
     columns: [], 
     type: 'bar' 
    } 

您還沒有在列中添加$scope.data

將其更改爲

data: { 
     columns: $scope.data, 
     type: 'bar' 
    } 

這裏$scope.data應該陣列和正確的格式。

檢查入門Guide演示了Columns

+0

我改變了,但它仍然不起作用。我想在圖形上顯示的數據(數組中的兩個對象):[{「calling_number」:「123」,「play」:「OFF」},{「calling_number」:「321」,「play」:「ON 「}]我必須解析這些數據才能顯示嗎? – corry

+0

你的數據是不正確的......這就是爲什麼它不工作......有沒有在演示的例子數組中的對象.... –

+0

我想重現這[plunker](http://plnkr.co /編輯/ 1ormW9jDCVwV4CfxKTow?p =預覽),很遺憾沒有圖 – corry

0

屬性,數據對象,我添加jsonkeys屬性列,而不是和工作的結果是:

data: { 
    json: $scope.data, 
    keys: { 
      value: ['units', 'duration'], 
    }, 
    type: 'bar' 
} 

感謝您的幫助。