我想检查此代码段中函数中“d”参数的值:
var force = force = d3.layout.force()
.nodes(json.nodes)
.links(json.links)
.linkDistance(function (d){return d;}) //I need to know the "d" value to decide what return
.size([width, height])
.start();
我正在使用 Firebug ,但我无法进入该功能。我试图在函数中放置一个警报,但它没有用。
最佳答案
d3 文档为您提供了参数:
force.linkDistance([距离])
如果指定了距离,则将链接节点之间的目标距离设置为指定值。如果未指定距离,则返回布局的当前链接距离,默认为 20。如果距离为常数,则所有链接的距离相同。否则,如果 distance 是一个函数,则该函数将针对每个链接(按顺序)进行评估,传递链接及其索引,并将 this 上下文作为强制布局;该函数的返回值随后用于设置每个链接的距离。每当布局开始时都会评估该函数。通常,距离以像素为单位指定;然而,单位相对于布局的大小是任意的。
>
因此,如果参数是函数,则第一个参数是链接,第二个参数是链接的索引。在应用该功能之前,您不应该忘记将数据关联到强制布局。
我这里有一个例子:
force
.nodes(json.nodes)
.links(json.links);
force.linkStrength(function(d,i) {return (json.links[i].isMyLeaf ? .01: 1);});
在我的 json 文件中,我为每个链接定义了 isMyLeaf。
关于javascript - 检查 d3 函数的参数值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15199266/