d3.js - 父树的值大于其子节点之和的树图

时间:2012-06-28 22:21:03

标签: javascript d3.js treemap

我正在尝试使用d3.js来显示一个树图,其父项的值可能大于其子项的总和。例如,假设我在命名空间层次结构中可视化代码行。命名空间B和C是A的子节点,每个都是1行。命名空间A是3行--B和C为1行,自身为1行。因此,B和C本身并不决定A的大小。

我想在树形图上显示这个属性。特别是,父级应该是子矩形顶部的矩形,其大小正确成比例。如果父级不添加任何其他大小,则仍应显示父级,但最小大小(可能是跨越子级顶部的小矩形,只是为了指示父名称)。

目前,子值节点仅在层次结构中向上传播,而不考虑非叶节点的实际大小。

我想在d3.js中找到一个解决方案,因为这是我在其余代码中使用的库,但是如果它解决了这个问题我会对另一个框架开放。

谢谢。

1 个答案:

答案 0 :(得分:1)

您可能想尝试允许内部层次结构节点具有值的pull request #574

否则,您可以向数据添加不可见的虚拟节点,这些节点包含与内部节点关联的额外值,但不会由子节点计算。渲染树形图时,您可以filter这些节点以防止它们被显示(即使它们是布局的一部分)。或者您可以将其样式设置为:none。