基于深度或父半径的自定义链接宽度

时间:2013-04-28 21:43:45

标签: javascript svg d3.js

我一直试图追逐这个问题很长一段时间。我试图根据父项的半径或子项的深度调整边的宽度。理想情况下,我想通过引用父/源半径来实现。最有希望的选择是为笔画宽度创建一个函数:

.attr("stroke-width",  function(d) { return d.r ;}); 

结果是下面的图像,其中一个边缘被赋予所需边缘,其余边缘不同。还有其他方法可以建议吗?

Lars Kotthoff建议如下,但结果基本相同:

function(d) { return (d.children ? d.children[0].r : d.r)/600; }

另一个选项是引用d.depth,但这会产生相同的结果。

enter image description here

当我将宽度设置为d.depth时,返回与深度不对应的异常数字。第一个边返回宽度0,第二个边返回1,第三个返回2,第四个边再次返回2。似乎没有押韵或理由。

    .attr("stroke-width", function(d) { return d.depth});

enter image description here

0 个答案:

没有答案