2014-02-25 50 views
1

我具有奇數的問題,我似乎無法搞清楚。我有一個下面有較小的上下文圖的堆積面積圖,我可以在這裏刷類似於:http://bl.ocks.org/mbostock/1667367D3與塗刷堆疊面積 - 僅第一嵌套元素顯示

畫筆正在工作,但只爲第一層(我已經離開了裁剪,因爲它更容易看到什麼正在發生)。

如果我簽在控制檯中的數據刷功能不只是有第一個關鍵,如果我更改圖表的變化數據的順序的關鍵,因此它總是不管第一個關鍵恰好是。

這裏是一個的jsfiddle:http://jsfiddle.net/goodspeedj/7Qzt4/

這裏是刷功能 - 在該函數的第三線具有僅示出具有「中止」鍵(第一層)的數據的console.log語句。

function brushed() { 
    main_x.domain(brush.empty() ? mini_x.domain() : brush.extent()); 
    //main.select(".layer").attr("d", main_area); 
    main.select(".layer").attr("d", function(d) { console.log(d); return main_area(d.values); }) 
    main.select(".x.axis").call(main_xAxis); 
} 

我猜這是非常簡單的東西 - 我似乎無法看到它。謝謝!

回答

2

我想通了。我應該一直在調用selectAll而不是在刷新函數中選擇。

此:

main.selectAll(".layer").attr("d", function(d) { console.log(d); return main_area(d.values); }) 

取而代之的是:

main.select(".layer").attr("d", function(d) { console.log(d); return main_area(d.values); }) 
+0

AMAZING謝謝!我有完全相同的問題。如果我可以的話,我會加倍努力:) –