带过渡的 D3 多线图

D3 Multiline Chart with transition

我正在研究带有过渡的多线图的纯 d3 实现。除了一点例外,它工作得很好。使用带有作为路径绘制的线的过渡似乎非常困难。我找到了一些使用剪切路径等的解决方案,并且总是与警告相结合,这些解决方案非常耗费性能。

是否有任何更简单的解决方案,可以将多线图表中的进度显示为真正的点对点绘图(至少在用户看来是这样)。

您可以在 http://bl.ocks.org/m99coder/136db7134df6fdc3e3cf

下查看我当前的代码

谨致问候 马可

2015-07-14更新14:14:00中欧

我重构了部分代码:http://bl.ocks.org/m99coder/8a9fab35b8f47ab8844c. But unfortunately I couldn’t get it to work as smooth as you given tutorial link (http://bost.ocks.org/mike/path/)。有什么建议吗?可能与定义范围有关,避免了“viewport”之外的值。

2015-07-14更新14:57:00中欧

越来越近但还不完美:http://bl.ocks.org/m99coder/136db7134df6fdc3e3cf/a53f06a0334bada96e1f892c886c5b68fe3c0a05。看起来路径在向左平滑过渡后又跳回到右边。

2015-07-14更新17:37:00中欧

协调更新和转换的持续时间也没有解决这个问题。现在它向左跳:http://bl.ocks.org/m99coder/8a9fab35b8f47ab8844c/cd25a9d33839f52974780b1c142922cbbf8f64f4

我让它按预期工作。这是一个时间问题。在转换完成之前修改了数据。新方法使用回调在转换结束时获得通知并随后转移数据。

http://bl.ocks.org/m99coder/54d6e0130064c699e6e4/06149dd1ab22cebf5b307bab3ec90079e356bce9