2016-02-16 66 views
0

我试图显示图表这样one,具有下列数据:C3条形图与3个变量

[{"name":"doctor","monetary":"on","number":57},{"name":"programmer","monetary":"non-monetary","number":15}] 

但我不能组上或与该数据的其余部分货币值。 有没有其他的方式来显示这些数据的图表?

这里是在控制器中的定义:

$scope.chart = c3.generate({ 
      bindto: d3.select('#chart'), 
      data: { 
      json: $scope.data, 
      columns: [ 
       ['monetary'], 
       ['number'] 
      ], 
      keys: { 
       value: ['doctor', 'programmer'] 
      }, 
      groups: [ 
       ['number'],['monetary'] 
      ], 
      type: 'bar' 
      }, 

      bar: { 
      width: { 
       ratio: 0.5 
       } 
      }, 
     }); 
     }, 

    function formatData (json) { 
     var formattedData = [], 
      object  = {}; 

     // fill object with data 
     angular.forEach(json, function(row) { 
     if (row.hasOwnProperty('name') && row.hasOwnProperty('number')) { 
      this[row.name] = row.number; 
     } 
     },object); 

     formattedData.push(object); // push c3 object in the array 

     return formattedData; 
    } 
}]); 
+0

你是什么意思,我不能组货币对或价值? – gaurav5430

回答

0

删除这部分代码如果我不是错误的,那么它会分别显示

groups: 
[ ['number'],['monetary']], 

修改后的代码是如下,并且也是小提琴的链接已经给出。

var chart = c3.generate({ 
    data: { 
     columns: [ 
      ['MONETARY', 0, 3259, 10415, 14660, 2950, 16705, 22255, 4000], 
      ['NON-MONETARY', 12335, 18041, 35900, 21985, 15110, 370, 13055, 20740] 
     ], 
     type: 'bar', 

    }, 
    axis: { 
     x: { 
      type: 'category', 
      categories: ['DENTIST', 'PROGRAMMER/ANALYST', 'CORPORATE SECRETARY', 'PHYSICIAN', 'PROFESSOR', 'PRESIDENT', 'MANAGER', 'CO-OWNER'] 
     } 
    }  
}); 

看到修改后的小提琴: http://jsfiddle.net/63cp42Lv/4/