How to automatically determine d3.layout.tree size?
我找不到任何D3 API文档,该文档将使您能够轻松确定给定d3.layout.tree或任何其他布局所需的宽度和高度,以确保没有节点相互重叠。
例如,一旦展开所有子节点,d3.layout.tree示例就会开始重叠。
是否有一种简单的D3方法来确定我的树需要避免重叠的宽度和高度? 还是我必须编写自己的方法?
编辑
在将来的某个时候,此行为有一个未解决的问题。
编辑#2
现在有https://github.com/mbostock/d3/wiki/Cluster-Layout#nodeSize和https://github.com/mbostock/d3/wiki/Tree-Layout#nodeSize来设置基于布局的大小 在每个节点的大小上。
我非常确定这是您需要创建自己的东西-树形布局不知道您将如何表示树形节点,标签和其他可视元素(尤其是那些元素的大小),因此它不会 不一定知道它们重叠(您可以减小元素的大小,而它们不再这样做了)。 因此,我认为不可能在树形布局功能中构建类似的内容。
您可以考虑通过使用" basewidth"变量并将其乘以显示的" final"节点数来动态设置宽度(或适当的高度)。