2017-02-22 86 views
1

我有一個D3圖表,它應該在2秒後更新。軸線改變時,線條本身不會。爲什麼這條線不變?

https://jsfiddle.net/horacebury/jwcngdLv/1/

我想這應該是更新軸和線,但我缺少什麼?

// Make the changes 
    svg.select(".line") // change the line 
    .duration(1000).attr("d", valueline(data)); 
    svg.select(".x.axis") // change the x axis 
    .duration(1000).call(xAxis); 
    svg.select(".y.axis") // change the y axis 
    .duration(1000).call(yAxis); 

回答

1

你錯過的類添加到這樣的路徑:

svg.append("path") // Add the valueline path. 
.classed("line", true) //add class to the path 
.attr("d", valueline(data)); 

原因: 在您使用的類名line選擇路徑的更新功能。

svg.select(".line") // change the line 
    .duration(1000).attr("d", valueline(data)); 

工作代碼here

+1

真棒。不能說我明白這是爲什麼,但這對我來說是全新的,所以希望它會來。謝謝! –