Jquery 如何使用crossfilter JS获取x轴上的数据和y轴上发生的次数?

Jquery 如何使用crossfilter JS获取x轴上的数据和y轴上发生的次数?,jquery,d3.js,dc.js,crossfilter,Jquery,D3.js,Dc.js,Crossfilter,我正在使用交叉过滤器获取x轴上的数据和y轴上发生的次数 var data = [{ Owner: "Alyssa", ID: "A" }, { Owner: "Alyssa", ID: "A" }, { Owner: "Alyssa", ID: "A" }, { Owner: "Alyssa", ID: "A" }, { Owner: "Alyssa"

我正在使用交叉过滤器获取x轴上的数据和y轴上发生的次数

     var data = [{
     Owner: "Alyssa",
    ID: "A"
    }, {
        Owner: "Alyssa",
       ID: "A"
    }, {
       Owner: "Alyssa",
       ID: "A"
  }, {
      Owner: "Alyssa",
      ID: "A"
  }, {
      Owner: "Alyssa",
      ID: "B"
     }, {
    Owner: "Bob",
    ID: "A"

}, {
    Owner: "Bob",
    ID: "D"
}, {
Owner: "Joe",
ID: "A"
}, {
   Owner: "Joe",
    ID: "A"
}, {
    Owner: "Joe",
    ID: "D"
}, {
    Owner: "Joe",
    ID: "D"

}];
var dropdown_cross1 = crossfilter(data); 
var x_owner_filter=dropdown_cross1.dimension(function (d){

        for (var key in d)
        { 
            if(d[key] == "D")
            {
                //console.log("selected_text="+selected_text);
                //console.log('key=' + key + ' value=' + d[key]); 
                console.log(d[key]);
                 return d[key];
            } 

         }

    });

   //x_owner_filter.filter("D");

    var y_owner_filter = x_owner_filter.group().reduceCount();


    var size=y_owner_filter.size();
    console.log("size="+size);

    var size_ownertitle = y_owner_filter.top(size);
    console.log(size_ownertitle);
输出

输出必须是[对象{key=D,value=3}]

我是新手,不知道哪里有问题

下面是在浏览器控制台中查看输出


请参阅更新的

如果您希望计算Ds,则这将是一个ID维度,简单地说:

var x_id_dim = dropdown_cross1.dimension(function (d){
    return d.ID;
});
现在,Y值来自与标注关联的组:

var y_id_group = x_id_dim.group().reduceCount();
您可能还需要所有者维度,请单独创建该维度


我怀疑这里的混淆可能是维度的交叉筛选定义——它们实际上是指您想要在X和Y中存储和筛选的某个键,而不是维度。通常Y图表维度将来自组聚合。

只需查看更新的JSFIDLE链接,并在浏览器控制台中查看输出即可。在其中,您可以选择Owner或ID之后,它将创建另一个具有相应值的下拉列表,之后,如果您选择任何ID或Owner,请在控制台中查看输出,我希望出现Owner或ID的次数。
var y_id_group = x_id_dim.group().reduceCount();