Javascript 交叉过滤器行图前10名

Javascript 交叉过滤器行图前10名,javascript,jquery,d3.js,dc.js,Javascript,Jquery,D3.js,Dc.js,我尝试使用Crossfilter.js D3.js和DC.js返回前10名列表,并显示在一个行图表中 HTML文件指向代码所在的js文件,如下所示: var Chart8 = dc.rowChart("#rChart8", "group1"); var People = ndx.dimension(function (d) {return d.datPeople;}); var People_Grp = People.group().reduceSum(function (d) { retur

我尝试使用Crossfilter.js D3.js和DC.js返回前10名列表,并显示在一个行图表中

HTML文件指向代码所在的js文件,如下所示:

var Chart8 = dc.rowChart("#rChart8", "group1");

var People = ndx.dimension(function (d) {return d.datPeople;});
var People_Grp = People.group().reduceSum(function (d) { return d.datVal; });

Chart8.width(300)
                .height(530)
                .margins({top: 20, left: 10, right: 10, bottom: 20})
                .transitionDuration(750)
                .dimension(People)
                .group(People_Grp)
            .colors(ColourSet1)
                .renderLabel(true)
                .gap(1)
                .title(function (d) { return ""; })
                .elasticX(true)
            .xAxis().ticks(8).tickFormat(d3.format("s"));
是否有人可以帮助筛选此项,以仅显示按值排列的前10名(datVal)? 我试过使用“.top(10)”,但显然我遗漏了一些东西


非常感谢

好的,所以我最终设法到达了那里

为结果数添加了一个变量:

selTop = 10
然后将其传递给group.top:

Chart8.data(function (group) { return group.top(selTop);});
使用变量(10)还可以动态调整图表的高度:

.height(selTop * 23)
分类