为什么线没有变化?

Why is the line not changing?

我有一张 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);

您没有像这样将 class 添加到路径中:

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

原因: 在您的更新功能中,您使用 class 名称 line 到 select 路径。

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

工作代码here