0
我有一个D3.js多行图,每个路径峰上都添加了圆圈。当我更新我的图表时,路径更新得很好,但新的数据看起来并没有更新。这是我的代码:http://jsbin.com/eMuQOHoV/3/edit圆圈没有在多线图中更新
有谁知道我在做什么错?
我有一个D3.js多行图,每个路径峰上都添加了圆圈。当我更新我的图表时,路径更新得很好,但新的数据看起来并没有更新。这是我的代码:http://jsbin.com/eMuQOHoV/3/edit圆圈没有在多线图中更新
有谁知道我在做什么错?
您需要按照创建它们的相同方式更新数据点圈。特别是,您在创建时使用嵌套选择,但在更新时不使用。这意味着数据在更新时无法正确匹配,也不会发生任何事情。
更新代码应该如下所示。
var sel = svg.selectAll('.series')
.data(sources);
sel.select('path')
.transition()
// etc
// update circles
sel.selectAll('.datapoint')
.data(function (d) {
return d.values;
})
// etc
完成jsbin here。
谢谢拉斯,那完美的工作! – thomastuts