dc.js饼图图例 - 如果结果为0则隐藏

Nor*_*ide 2 javascript dc.js

如果结果为0,是否可以删除/隐藏饼图的图例?

我有一个饼图,在图例中有相当多的项目,当有一些过滤时,删除不可用的图例会很棒.

任何帮助,将不胜感激.

Gor*_*don 5

当图表重新绘制时,图例会渲染,但问题是图例是从数据中提取的,而交叉过滤器不会自动消除空组.

如果传说是图表类型,那将是非常好的,所以我们可以使用假组(又名"数据转换").但不,我们需要更新.legendables()以过滤掉空箱:

dc.override(pieactChart, 'legendables', function() {
    var legendables = this._legendables();
    return legendables.filter(function(l) {
        return l.data > 0;
    });
});
Run Code Online (Sandbox Code Playgroud)

你小提琴的叉子:http://jsfiddle.net/gordonwoodhull/13t804u6/5/

注意:这只会修改一个(左)图表,您必须为每个图表复制/粘贴它(或将其包装在一个函数中)以将其应用于其他图表.

[我非常顽固地不想在图表中使用这样的数据过滤内容,所以我不打算将其作为一个功能.相反,图例应该是一个从另一个图表中获取数据的图表,应该有一种方法来转换这些数据.