1

我对 d3 很陌生,我正在使用 d3.layout.pack 构建图表。

我想将每个圆圈的文本标签放在圆圈之外,但不与其他标签或其他圆圈重叠。

像这样: 使用 d3.layout.pack 的气泡图

有任何想法吗?

非常感谢

pd:这是我尝试过的:

var nodes = d3.layout.pack()
  .value(function(d) { return d.size; })
  .size([w, h]).padding(333)
  .nodes(data);
4

1 回答 1

1

我会建议另一种方法:labels/text沿着圆圈的顶部放置,并且仅适用于相当大的圆圈......这不会完全解决重叠问题,但在我看来,视觉组织会更好。

这是说明该方法的示例的jsfiddle 。

在此处输入图像描述

详细信息在另一个 SO 问题/答案中进行了描述

于 2014-06-27T16:05:17.917 回答