Javascript d3维恩图标签分层

Javascript d3维恩图标签分层,javascript,d3.js,Javascript,D3.js,我用这篇很棒的文章来制作一个D3的维恩图 它看起来很棒,但有时我会发现气泡与标签重叠而隐藏起来。有没有办法确保文本元素始终位于顶部?(见下图..标签A需要位于圆圈B的顶部 我发现了这篇好文章,但我在如何在venn中实现这一点上苦苦挣扎 您可能会发现在实际层中工作更容易。您可以使用g元素来创建它们。例如: var lowerLayer = svg.append('g'); var upperLayer = svg.append('g'); 现在,您附加到上层的任何内容都将显示在附加到下层的任

我用这篇很棒的文章来制作一个D3的维恩图

它看起来很棒,但有时我会发现气泡与标签重叠而隐藏起来。有没有办法确保文本元素始终位于顶部?(见下图..标签A需要位于圆圈B的顶部

我发现了这篇好文章,但我在如何在venn中实现这一点上苦苦挣扎


您可能会发现在实际层中工作更容易。您可以使用
g
元素来创建它们。例如:

var lowerLayer = svg.append('g');
var upperLayer = svg.append('g');
现在,您附加到上层的任何内容都将显示在附加到下层的任何内容之上,因为这两个
g
元素已添加到DOM中,并且是按特定顺序添加的


还可以查看我写的一个类似的问题。

您应该从master那里获取最新的代码:这个提交应该修复您在那里遇到的问题


与其让“A”标签位于“B”圆圈的上方,它现在将移动标签,使其位于“A”区域中与“B”不重叠的某个区域。此处有一些详细信息:

这肯定会解决问题-尽管如果有3个大小相同的圆圈,标签仍会重叠