2014-07-15 87 views
1

我在從barChart刪除空組時遇到了一些問題。使用dc.js從barChart中刪除空組

我的意圖是從xAxis中刪除空的組(以完全隱藏它們)並讓barChart相應地縮放事物。

讀了dc.js常見問題我碰到這個片段來了:

var group = { 
all:function() { 
    return _group.all().filter(function(d) { 
    return d.value != 0; 
    }) 
} 
}; 

我加入這個代碼如下所示:

BarChart.on("preRedraw", function(chart) { 
    group = chart.group(); 
    group2 = { 
     all: function() 
      { return group.all().filter(function(d) { return (d.value.wins+d.value.losses) > 0; }) } 
    }; 
chart.group(group2); 
}) 

這樣做會導致一個「太多遞歸」錯誤後我使用其他圖表上的1-2個過濾器。

group2提供了正確的結果,但它似乎像現有的酒吧不受它的影響或以奇怪的方式做,導致酒吧有缺口或其他缺陷。

我已經嘗試在函數的結尾添加沒有成功。

BarChart.x(d3.scale.ordinal()); 
BarChart.xUnits(dc.units.ordinal); 
BarChart.rescale(); 

我甚至嘗試重新渲染圖表。

任何關於此事的幫助將不勝感激。

回答

0

您只想在初始化圖表時進行一次操作。這種假組動態計算,並不需要在每個抽獎週期重置。

換句話說,常見問題解答中提到的源_group旨在成爲您在其初始化過程中以其他方式傳遞給圖表的組,並且一旦產生了僞組,就將其傳入。

+0

我看到我的錯誤在哪裏。它起源於我在類似主題上找到的谷歌小組討論(https://groups.google.com/forum/#!topic/dc-js-user-group/UERVo4QGX7w)。最後的回覆讓我走錯了路。謝謝你的快速反應 – AndreiB