3
我正在使用d3呈现数据。我有)一个nodes
列表,从中我使用。进入(建造一堆SVG群体,像这样(简化):d3:数据更改时刷新子节点上的attr值
nodes = [{name: "Fred"}, {name: "Barney"}];
var node = vis.selectAll(".node")
.data(nodes)
.enter().append("svg:g")
.attr("class", "node");
var circ = node.append("svg:circle")
.attr("x", 0)
.attr("y", 0)
.attr("r", 10)
node.append("svg:text")
.attr("dx", 0)
.attr("dy", 0)
.text(function(d) { return d.name });
但是,如果我编辑列表项的name
,SVG的文本元素不更新(因为它的text
attr只在创建时被调用)。我该如何告诉d3“重新创建”与已更改的listitem相对应的SVG组?我正在做这个强制布局的一部分,所以我可以在每个剔号上设置一个属性,但这样做很不雅观。