我有一个变量,将所有链接数据保存在力向图中

var linkData = d3.selectAll(".link").data();


我有一个用于循环遍历此数据的for循环,以查看是否有任何边具有特定值。
如果他们有,我希望将该边缘的类别更改为可见,否则将其更改为隐藏。

但是,令我感到困惑的是,我在linkData[3];处获得了想要的优势,我如何选择实际的链接,以便可以更改CSS类,因为linkData是数据,如何获得实际的对象?

最佳答案

您可以filter a selection

var myLink = d3.selectAll(".link")
             .filter(function(d) { return d === linkData[3]; })
             .attr('stroke', 'red');




或者,更好的是,如LeartS建议的那样,您可以直接过滤链接,而无需从DOM中浏览.data()

var myLink = d3.selectAll(".link")
             .filter(function(d) { return isThisTheLinkIWant(d); })
             .attr('stroke', 'red');

09-27 22:16