gpt4 book ai didi

dc.js - 如果值为零,如何隐藏 dc.js 行图值

转载 作者:行者123 更新时间:2023-12-04 23:49:02 26 4
gpt4 key购买 nike

如果过滤后 dc.js 中的行图值为零,我们如何隐藏。我们有这样的代码:

    var kurum=data.dimension(function(d){return ""+ d.KURUM;});
var kurumGroup=kurum.group().reduceSum(function(d){return +d.INSIDANS});

kurumRowMapChart
.width(300)
.height(200)
.margins({top: 5, left: 10, right: 10, bottom: 20})
.dimension(kurum)
.group(kurumGroup)
.colors(d3.scale.category10())
.elasticX(true)
.ordering(function(d) { return -d.value })
.xAxis().ticks(4);

此代码正常工作,但我们希望在值为零时隐藏过滤器。

谢谢

最佳答案

您可以创建一个“假组”,当 .all() 时删除包含零的垃圾箱叫做:

function remove_empty_bins(source_group) {
return {
all:function () {
return source_group.all().filter(function(d) {
return d.value != 0;
});
}
};
}

像这样使用它:
var filtered_group = remove_empty_bins(kurumGroup);

kurumRowMapChart.dimension(kurum)
.group(filtered_group)
...

https://github.com/dc-js/dc.js/wiki/FAQ#remove-empty-bins

这个想法是创建一个位于 crossfilter 和 dc.js 之间的对象,它看起来像一个 crossfilter 组并根据需要对其进行过滤。

这是一个有点复杂的示例,旨在测试不同数量的柱之间的转换:

http://dc-js.github.io/dc.js/transitions/ordinal-row-transitions.html

(目前过渡不是很好,但它很好地展示了 remove_empty_bins。)

关于dc.js - 如果值为零,如何隐藏 dc.js 行图值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27305546/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com