D3 TreeMap:为最小节点保留最小宽度和高度

5

我刚接触D3技术并创建了我的第一个树图。

我找不到解决方案来保留最小节点的尺寸(一定的宽度和高度)。

基本上,如果你查看我的JSfiddle,你会发现大小为1的最小节点无法正确地显示其内部标签,因为框/节点太小,文本无法适应其中。

{"name": "label5", "size": 1}

请问有什么方法可以指定节点的最小尺寸(宽度和高度),以便某些文本/标签可以适配?

这是我的完整 JSFiddle

图片描述


嘿,你解决了这个问题了吗? - praty
1个回答

4
一个可能解决你问题的方法是稍微更改代码中的第21行和第42行,使其看起来像这样:

第21行:

.value(function(d) { return d.size + 20; });

第42行:

    : function(d) { return d.size + 20; };

(请注意,我所做的只是添加了" + 20"

这里是修改后的jsfiddle:修改示例

现在,根据您的数据,您可能想要做其他事情,也许不是20,而是计算所有值之和的1%,但这是一个基本的想法,可以成为您坚实的起点。

希望这有所帮助。

这是修改后的树状图截图:

modified treemap


它可能会起作用,但在计算每个框的大小的函数中对整数求和意味着每个框都会增大相同的数量。这意味着整个树状图的纵横比也可能相同,问题将无法解决。 - Matteo Guarnerio

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接