【发布时间】:2014-10-02 00:13:16
【问题描述】:
如何按维度的计算值而不是维度本身的名称对 dc.js 示例中的 x 轴(维度)进行排序?
例如,考虑 dc.js 的顺序条形图示例:
https://github.com/dc-js/dc.js/blob/master/web/examples/ord.html
如何按水果数量的降序对 x 轴进行排序?
这是我尝试过的:(jsfiddle: http://jsfiddle.net/gautam/re9r9kk7/)
var counts = [
{name: "apple", cnt: 10},
{name: "orange", cnt: 15},
{name: "banana", cnt: 12},
{name: "grapefruit", cnt: 2},
{name: "grapefruit", cnt: 4}
];
var ndx = crossfilter(counts),
fruitDimension = ndx.dimension(function(d) {return d.name;}),
sumGroup = fruitDimension.group().reduceSum(function(d) {return d.cnt;});
chart
.width(768)
.height(380)
.x(d3.scale.ordinal())
.xUnits(dc.units.ordinal)
.brushOn(false)
.xAxisLabel("Fruit")
.yAxisLabel("Quantity Sold")
.dimension(fruitDimension)
.barPadding(0.1)
.outerPadding(0.05)
.group(sumGroup);
【问题讨论】:
-
你的小提琴不适合我。
标签: javascript sorting bar-chart dc.js crossfilter