我想垂直增加节点之间的空间,为此我发现 d3 从 v3 开始有 nodeSize()
,我在堆栈和 fuddles 上发现了类似的问题,并且一切正常。但在我的例子中,这个 nodeSize()
不起作用。
我创建了一个包含我的代码的 js fiddle ,但 d3 图与我在我的开发服务器中的不完全相同,因为它也包含 Angular 和 js 调用,但我认为这不会影响这个大小问题。这样您就可以了解我做了什么以及为什么 nodeSize()
不起作用
编辑:
我刚刚发现 nodeSize 在他们的示例中也不起作用 http://bl.ocks.org/robschmuecker/7880033
可能是因为他们正在使用 viewHieght 和 viewWidth ,任何解决方案?
最佳答案
好的,如果你阅读文档: https://github.com/mbostock/d3/wiki/Tree-Layout#size 它在文档中明确指出: size 属性与 tree.nodeSize 是互斥的;设置 tree.size 会将 tree.nodeSize 设置为 null。
所以在 fiddle (http://jsfiddle.net/9428byn7/) 的更新函数中检查第 473 行: 你写了:
tree = tree.size([newHeight, viewerWidth]);
根据文档和我们所看到的,这会使您的 tree.nodeSize 无效。 所以不是做上面的行而是做:
tree.nodeSize([200,600]);
工作代码 here .
希望这能澄清您的担忧!
关于javascript - tree.nodeSize() 在 D3 TreeMap 中不起作用节点之间的空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32839957/