Javascript 具有特定顺序的C3JS条形图
如果我有一个像下面这样定义的C3JS分组条形图,我如何才能让这些线段保持我定义的顺序,而不是按值升序?默认情况下,C3将按5、10、40的顺序排列,但我希望它保持为10、40、5Javascript 具有特定顺序的C3JS条形图,javascript,charts,c3.js,Javascript,Charts,C3.js,如果我有一个像下面这样定义的C3JS分组条形图,我如何才能让这些线段保持我定义的顺序,而不是按值升序?默认情况下,C3将按5、10、40的顺序排列,但我希望它保持为10、40、5 c3.generate({ bindto: '.active-loads', data: { columns: [ ['Picking up future', 10], ['Enroute', 40], ['Delivered', 5] ], type
c3.generate({
bindto: '.active-loads',
data: {
columns: [
['Picking up future', 10],
['Enroute', 40],
['Delivered', 5]
],
type: 'bar',
groups: [
['Picking up future', 'Enroute', 'Delivered']
],
onclick: function(d) {
console.debug(d);
}
},
axis: {
rotated: true,
x: {
show: false
}
}
});
编辑
事实证明,只需在
数据
属性中指定顺序:null
就可以了。C3js文档有一个页面:
您可以按以下方式对数据进行排序:
var chart = c3.generate({
data: {
columns: [
['data1', 130, 200, 320, 400, 530, 750],
['data2', -130, 10, 130, 200, 150, 250],
['data3', -130, -50, -10, -200, -250, -150]
],
type: 'bar',
groups: [
['data1', 'data2', 'data3']
],
order: 'desc' // stack order by sum of values descendantly.
// order: 'asc' // stack order by sum of values ascendantly.
// order: null // stack order by data definition.
},
grid: {
y: {
lines: [{value:0}]
}
}
});
这里也有详细的解释:
你也可以指定你的函数:)我确实看到了,但是它也说,
order:null
是默认值,但是如果你忽略它,默认情况下它实际上不会应用它。您必须自己明确指定它。@PatrickGrimard否,它说desc是默认值,请检查我在上面引用的链接。我认为它在文档页面上的输入错误是因为我选中了source,而desc也是默认选项。我必须在这里打开这个问题。@Abhishek我期待着在简单的条形图上对条形图进行排序,如果有可能的话,我会像下面提到的那样。var chart=c3.generate({data:{columns:['data1',30,200,100,400,150,250],],类型:'bar',顺序:'desc'},});这确实奏效了。我几乎开始为订购编写一个疯狂的自定义函数--我也快疯了;)我期待着在简单的条形图上对条形图进行排序,如果可能的话,可以像下面我提到的那样(没有任何组):var chart=c3.generate({data:{columns:['data1',30,200,100,400,150,250],],键入:'bar',order:'desc'},});