我一直在谷歌搜索,但我似乎无法掌握这一点.
我的情况是,在饼图上显示时各国重叠:
这是正在发生的事情的一个例子:

我是一个初学者D3,我正在努力防止文本重叠.有没有像我可以添加的文本边距属性,以便我的标签不会相互重叠?
我将在我的饼图(中心)的每个弧中放置一个文本元素 - 如下例所示:http: //bl.ocks.org/mbostock/3887235
但是,如果房间足够整个文本,我只会放置文本元素,所以我必须将我的文本元素的大小与每个弧中的"可用"空间进行比较.
我想我可以用getBBox()来获取文本尺寸...但是如何获得(和比较)每个弧中可用空间的尺寸.
谢谢...!
我正在使用D3.js绘制一个饼图,脚本非常简单.问题是当切片很小时,它们的标签重叠.
我有什么选择来防止它们重叠?D3.js有我可以利用的内置机制吗?
演示:http://jsfiddle.net/roxeteer/JTuej/
var container = d3.select("#piechart");
var data = [
{ name: "Group 1", value: 1500 },
{ name: "Group 2", value: 500 },
{ name: "Group 3", value: 100 },
{ name: "Group 4", value: 50 },
{ name: "Group 5", value: 20 }
];
var width = 500;
var height = 500;
var radius = 150;
var textOffset = 14;
var color = d3.scale.category20();
var svg = container.append("svg:svg")
.attr("width", width)
.attr("height", height);
var pie …Run Code Online (Sandbox Code Playgroud)