C3堆叠图表维护数据顺序

时间:2016-12-01 12:48:15

标签: javascript c3.js

我按照参考文献和this answer的说明进行操作,但没有成功。

我有一个堆积的条形图,我希望堆栈中的数据按照数据中的顺序显示,但它已经重新排序,我不能弄清楚如何防止它。

这里是jsfiddle

这是代码

var chartOptions = {
  element: 'chart',
  data: {
    "rows":[["0-1","2-3","4-5","6","7"],[25,56,14,2,1],[6,66,27,0,0],[0,70,30,0,0],[27,54,14,5,0],[0,54,30,8,8],[29,64,7,0,0]],
    "type":"bar",
    "groups":[["0-1","2-3","4-5","6","7"]],
    "order":null
  },
  axis: {
    "x":{
      "type":"category",
      "categories":["Whole List","committed","community","congregation","core","crowd"]
    },
    "y":{
      "padding":{
        "top":0
      }
    }
  },
  stacked: true,
  size: {"height":300}
}

var chart = c3.generate(chartOptions);

我希望系列的顺序为0-1,2-3,4-5等

1 个答案:

答案 0 :(得分:0)

原来这是一个known issue。如果任何一个头是一个整数(或一个整数的字符串),那么c3将对列进行排序。

要解决此问题,我会在列名末尾附加一个空格,以便c3将它们解释为字符串而不是数字。

例如

//Cls
const dep1 = require('dep1');
const dep2 = require('dep2');
module.exports = function Cls() {
  // deps usage
}

// and 
const inst = new Cls();

我已使用解决方法更新了jsfiddle