突出显示D3.JS sankey图表中的特定链接

时间:2016-12-31 06:30:30

标签: javascript css d3.js charts data-visualization

在下面的示例中,我想在初始加载时永久突出显示特定链接(每个节点之间的连接):

http://bl.ocks.org/d3noob/c2637e28b79fb3bfea13

如您所见,它将突出显示鼠标悬停的链接。

这是用css实现的:

.link:hover {
  stroke-opacity: .5;
}

如何在不使用鼠标悬停的情况下(即首次添加SVG元素时)获取特定链接的相同结果(例如前两个节点之间的链接)。

1 个答案:

答案 0 :(得分:3)

这就是您所需要的:首先,相应地过滤link数组。

var firstLink = link.filter(d => d.source.node === 0 && d.target.node === 4);

在这种情况下,我们得到第一个链接(在顶部),从节点0(源)到节点4(目标)。

然后,应用不透明度:

firstLink.attr("opacity", .5);

这是一个显示它的小提琴:https://jsfiddle.net/7mm1ko4f/