在dc.js crossfilter.js中的自定义reduce函数中进行自定义排序
我有以下自定义减少功能
function reduceAdd(p, v) {
p.vol_t += v.oqt;
p.prc_t += v.it;
++p.count;
// p.average = d3.round((p.total / p.count), 2);
return p;
}
function reduceRemove(p, v) {
p.vol_t -= v.oqt;
p.prc_t -= v.it;
--p.count;
// p.average = d3.round((p.total / p.count), 2);
return p;
}
function reduceInitial() {
return {
vol_t: 0.0,
prc_t: 0.0,
count: 0,
};
}
我的数据模型如下所示:
[{cat:'a', oqt:23.0, it: 45.0},
{cat:'b', oqt:25.0, it: 5.0},
{cat:'b', oqt:22.0, it: 25.0},
{cat:'c', oqt:17.0, it: 35.0}]
我试图用dc.js绘制一个气泡图,其中vol_t作为X(keyAccessor),prc_t作为Y轴(valueAccessor)并计为radiusAcessor。 我如何找到所有组的最大值和最小值。 我的群组基于类别'猫'维度。
谢谢!
您可以根据其值定义组的任意排序:https://github.com/crossfilter/crossfilter/wiki/API-Reference#group_order
但是,如果您使用的是dc.js气泡图,我不认为有必要定义任何特定的排序。 你只需要定义适当的访问器。
通过使用d3.extent解决它,并传递类别组和访问器函数返回量和价格。
链接地址: http://www.djcxy.com/p/32757.html上一篇: custom ordering in custom reduce functions in dc.js crossfilter.js