如何使用通话功能?

时间:2015-11-24 13:49:27

标签: d3.js

让我说我有一些类线的元素。所以我可以写:

var lines = svg.selectAll('.line');
lines.exit().remove();
lines.transition().append('text')
lines.enter().append('g').attr('class', 'line');

然后为每个g.line元素调用append(' text')。如果我想调用自定义函数f而不是追加怎么办?我想这应该使用call函数,但是: lines.call(f)只会调用f一次(包含所有数据,但我想为每个元素单独启动f)

幸运的是发现这是可能的,不确定是否有更好的smth: lines.transition()。each(function(datum,index){             renderDataLine(d3.select(this),data [index],...); });

1 个答案:

答案 0 :(得分:1)

您可能希望查看each,请参阅here

我引用:

  

为当前选择中的每个元素调用指定的函数

我设置了一个小提琴(手表控制台)here