【发布时间】:2014-01-02 08:13:12
【问题描述】:
我正在尝试根据自己的需要调整以下 d3.js 强制布局:
http://bl.ocks.org/mbostock/1093130
当我使用以下 json 文件时,一切正常(2 个节点和 1 个链接):
{
"name": "parent",
"children": [
{"name": "child1", "size": 100}
]
}
然后我想从头开始构建节点对象;因此,在上述参考示例中,我将flatten() 函数替换为以下函数:
function flatten1() {
var nodes = [];
var node = {name: 'child1', size: 100, id: 1};
nodes.push(node);
node = {name: 'parent', children: [{name: 'child1', size: 100, id: 1}], id: 2};
nodes.push(node);
return nodes;
}
update() 函数现在以 :
var nodes = flatten1(),
links = d3.layout.tree().links(nodes);
当然,我不再使用json文件了。
当我检查节点和链接的内容时,它看起来与之前的工作代码(带有 json 文件)相似,但有一个显示问题:2 个节点都可以,但链接从父节点到左上角svg 块的一角...
我错过了什么? 任何帮助将不胜感激。
【问题讨论】:
标签: javascript json hyperlink d3.js nodes