2014-09-11 48 views
0

我有一個帶有轉換的折線圖,我添加了工具提示。這對第一個部門來說工作正常,但只要從下拉菜單中更改部門,圖表的散點圖部分就不會重新繪製(該行更新應該如此)。我可能在這裏錯過了一些基本的東西,但是當我看過例子時,我想我已經有了正確的想法。有人看到我的代碼有什麼問題嗎?d3.js散點圖不會在轉換時重繪

更新 - 刪除了完整的代碼。當我在控制檯中啓動時,我會得到所需的更改。但它在我的更新功能中不起作用。而且,我也很難理解:)

focus.selectAll("circle") 
.data(dataFilter) 
    .attr("fill","blue") 
    .attr("cx", function(d) { return x(d.datum); })  
    .attr("cy", function(d) { return y(d.Kvot); }); 

回答

1

終於明白了 - 當我把它自己的更新功能,並稱它過渡後似乎工作。任何人都可以解釋爲什麼我不能把它放在其他功能?我想這與過渡有關,但不知道。

function update_circles() { 
focus.selectAll("circle") 
    .data(dataFilter) 
    .attr("cx", function(d) { return x(d.datum); })  
    .attr("cy", function(d) { return y(d.Kvot); }); 
}; 
0

你忘了使用transition方法:官方文檔中

// Make the changes 
focus.select("#Main").transition().duration(750) 
    .attr("transform", "translate(" + (width+3) + "," + y(yMain) + ")") 
    .text(sec); 

更多transitions。問候,

+0

我添加它早一點讓部分作品(VAR焦點= d3.select(「身體」)轉移();)這是更新功能不起作用,這與交易的最後一部分點。 – ErrantBard 2014-09-11 11:28:52

+0

我認爲帶點的部分也缺少'transition()'方法。 – 2014-09-11 11:34:13

+0

嗯,我試圖添加它,但它仍然給我Uncaught TypeError:undefined不是函數 – ErrantBard 2014-09-11 11:39:15