2
卡住重叠标签。举例说明:JSFIDDLE停止d3圆圈包装标签重叠
- 单击文本标签“组A”。缩放转换后,组A标签仍然与小圆圈的标签重叠。
- 点击其他地方缩小。
- 再次点击“组A”。这次标签不会保留,所以 没有重叠。所以它似乎在一次后自行修复。
我不想在第一次点击某物时重叠。我该怎么做呢?我不想截断标签或重新定位标签。
我一直在摆弄这一点,但到目前为止没有运气。
transition.selectAll("text")
.filter(function(d) { return d.parent === focus || this.style.display === "inline"; })
.style("fill-opacity", function(d) { return d.parent === focus ? 1 : 0; })
.each("start", function(d) { if (d.parent === focus) this.style.display = "inline"; })
.each("end", function(d) { if (d.parent !== focus) this.style.display = "none"; });
仅供参考,如果第一次点击位于中等圆上,也会发生这种情况。
This post gets close,通过说可能使用包输出限制可视性,但没有说明如何实现它。
所以基本上我试图做这样的事情:“如果放大到中等或小圈的水平,不要显示中等圈标签。”
谢谢。
热潮!这样做,谢谢。这是有道理的,你必须在初始视图后立即在那里得到修复,并且你已经知道了。非常感谢! [JSFIDDLE ANSWER](http://jsfiddle.net/airwwwave/9vzx2s3v/)(尽管这在jsfiddle结果窗格中不起作用,您必须运行它。 – airwwwave