首页 文章

使用dc.js绘制具有相同大小的饼图

提问于
浏览
1

可能是我的问题很愚蠢,但我需要使用dc.js绘制一个饼图,它有多年的碎片,但无论是组数据,它们都需要相同的大小 . 我将crossfilter.js中的数据组作为相同的值 . 但是我需要知道还有其他方法可以使用尺寸获得具有相同尺寸的饼图吗?

1 回答

  • 0

    我想's not really a pie chart anymore. However, I' d建议用"fake group"这样做 .

    首先,为此创建一个组,即使我们不使用这些值,我们也会让crossfilter统一组 .

    var group = dimension.group();
    

    然后生成一个“假组”,每次读取时,将所有值设置为1:

    function all_equal_group(group) {
        function make_equal(kvs) {
            return kvs.map(function(kv) {
                return {key: kv.key, value: 1};
            });
        }
        return {
            all: function() {
                return make_equal(group.all());
            },
            top: function(N) {
                return make_equal(group.top(N));
            }
        };
    }
    

    top 函数用于以防您使用capping . 也许在这里不需要,但它不会受到伤害 .

    将它应用到您的图表中,如下所示:

    pieChart.group(all_equal_group(group));
    

相关问题