crossfilter / dc.js - 过滤以显示更多详细信息

时间:2015-08-10 12:11:35

标签: javascript d3.js dc.js crossfilter

我想显示一个饼图,显示各种商品(例如衣服,鞋子,帽子)的销售额,然后当点击饼图的一部分时,将按国家/地区细分该项目的销售数据。因此,如果用户点击,例如,鞋子,饼图将显示鞋子销售除以国家。 问题是我正在尝试创建一个具有特定项目销售额的组,但我获得了空值。

pie.onClick = function(i) {
    var x = i.key;
    console.log("Getting data for "+x);

    var countryDim = cf.dimension(function(d){
        return d.country;
    });
    console.log("countryDim");
    print_filter(countryDim);
    var salesPerItemByCountryGroup = countryDim.group().reduceSum(function(d){
        if(d.item == x){
            return d.sales;
        }
        });
    print_filter(salesPerItemByCountryGroup);
    pie.dimension(countryDim).group(salesPerItemByCountryGroup);
    dc.redrawAll();
};

请参阅此jsfiddle - http://jsfiddle.net/SeamusA/mz9ossr3/1/

有什么想法吗?

0 个答案:

没有答案