D3.js中的双嵌套数据

时间:2012-08-22 19:21:33

标签: javascript d3.js

我想做两个部分:一个月,一个一年 在每个部分内:彼此之间有两个饼图,所以


  • - > mtd馅饼
    - > lymtd pie

  • - > lyytd馅饼
    - > ytd pie

我的数据结构如下:

{range:"month||year",period:"mtd||ytd||lymtd||lyytd",category_id:25,amount:100}

我用

嵌套了我的数据
nested = d3.nest()
  .key(function(d){return d.range;})
  .key(function(d){return d.period;})
  .entries(collection.toD3Json());

我的初始数据附件是:

var blocks = chart.selectAll("svg")
      .data(nested, function(d){ return d.key;})

关键是我想在整个过程中保留对象的持久性,所以如果我附加一个新的嵌套数据结构,它将使用现有的密钥或在密钥不存在的情况下添加新元素。

我遇到了第一个数据连接的问题,因为我想将nested.values与另一个d.key一起使用,但我不确定如何。到目前为止,我最好的猜测是:

var circles = blocks.selectAll("g.block")
         .data(function(d){ return d.key;})
    .enter().append("svg:g")
         .attr("class","block");

0 个答案:

没有答案