我一直在尝试调整下面链接中显示的可折叠力布局。 http://bl.ocks.org/mbostock/1093130
任何人都可以帮我理解如何为每个链接设置不同长度的linkdistance而不是将它们全部设置为一个值吗?
与此问题类似的是示例https://bl.ocks.org/mbostock/1062288,它似乎允许各个链接具有不同的长度。但是,我不明白代码是如何解释的。
感谢任何指导。
答案 0 :(得分:1)
正如西里尔所说,下面的代码很有用。
var force = d3.layout.force()
.linkDistance(function(d){
if(d.target._children){
return 50;//target is not expanded so link distance is 50
} else {
return 200;//target is expanded so link distance is 200
}
})
对我来说是什么样的:
var force = d3.layout.force()
.linkDistance(d.target.nodeproperty)
特别是我没有意识到我必须在d.nodeproperty中指定目标。