d3 Sankey - выделите все подключенные пути от начала до конца
Я пытаюсь выделить все связанные ссылки и ссылки их целевых узлов до конца макета.
Первый уровень выделения может быть легко достигнут следующим образом:
На узле нажмите, позвонитеhighlight_paths(1)
;
function highlight_paths(stroke_opacity) {
return function(d,i){
d.sourceLinks.forEach(function(srcLnk){
d3.select("#link"+srcLnk.id).style("stroke-opacity", stroke_opacity);
});
d.targetLinks.forEach(function(srcLnk){
d3.select("#link"+srcLnk.id).style("stroke-opacity", stroke_opacity);
});
}
}
Но я пока не могу правильно написать рекурсивный алгоритм, чтобы получить все sourceLinks и targetLinks каждого из подключенных узлов source и target.
Все мысли приветствуются!
Благодарю.