【发布时间】:2018-06-25 06:23:40
【问题描述】:
我尝试通过更改节点和链接的填充来突出显示从鼠标指向根节点的节点的路径。我在 Block 上使用 Mike's 的 Radial Tidy Tree。
我尝试了node.ancestors(),但这未被识别为函数。
当我尝试创建一个变量并将node.parent 放入其中或使用d3.select(this.parentNode) 时,它也不起作用。
我在 Google 网上论坛上发现有人试图反其道而行之,而 Mike Bostock told them 问题出在他的树数据上。
我使用了 Mike 给出的方法,效果很好:
node.on("mouseover", function(p) {
//color the links
link.filter(function(d) {
for (d = d.source; d; d = d.parent) {
if (d === p) return true;
}
}).style("stroke","black");
//color the nodes
node.filter(function(d) {
while(d = d.parent){
if(d === p) return true ;
}
}).style("fill","red");
});
它改变了颜色,我也对mouseout做了相反的事情。
但是我不能用相反的方向配置它(节点到父级到根),有人可以帮我做吗?
【问题讨论】:
标签: javascript d3.js path tree highlight