我有一个场景,我想使用数据连接为每个数据元素追加2个新元素.
我原来是这样做的:
var y = d3.selectAll("line")
.data([123, 456]);
y.enter().append("line"); // assume attr and style set
y.enter().append("line");
y.transition()...
Run Code Online (Sandbox Code Playgroud)
在我仔细考虑之前,我期待在我的转换中使用的更新选择将包含来自输入选择的合并附加.但当然这没有用,因为每个数据元素的选择只有1个插槽.
所以我更改了代码,使得它仍然使用相同的enter()选择两次,然后重新选择新元素以进行转换.
这种方法有效,但我的问题是这是否是推荐的方法.我追加/插入后应该确保停止使用enter()吗?或者可以使用它来创建多个元素,只要我记得更新选择只包含最后创建的元素吗?
如果事实证明这是错误的,那么实现这一目标的更好方法是什么?
我创建了一个力导向图,但是我无法在创建的链接中添加文本.
我怎么能这样做?
以下是我的代码链接
我已使用以下行在链接上附加标题,但它不会出现.
link.append("title")
.text(function (d) {
return d.value;
});
Run Code Online (Sandbox Code Playgroud)
我做错了什么?