Javascript D3中的圆弧形心返回(NaN,NaN)

Javascript D3中的圆弧形心返回(NaN,NaN),javascript,d3.js,Javascript,D3.js,警告:我是D3新手。我正在用D3构建一个甜甜圈图表,到目前为止一切都很好,只是切片上的标签没有与切片对齐。使用下面的代码,每个切片的标签呈现在图表的中间,堆叠在彼此的顶部,因此它们是不可读的。我在变换属性中删除了arc.centroid,但它返回的是“NaN,NaN”而不是实际坐标,我不知道它从哪里读取,因为它没有找到一个数字。我的内半径和外半径在arc变量中定义。有什么帮助吗 (请原谅,这里没有JSFIDLE,但我是从.csv中提取数据的) 终于明白了。arc.centroid函数需要预计算的

警告:我是D3新手。我正在用D3构建一个甜甜圈图表,到目前为止一切都很好,只是切片上的标签没有与切片对齐。使用下面的代码,每个切片的标签呈现在图表的中间,堆叠在彼此的顶部,因此它们是不可读的。我在变换属性中删除了arc.centroid,但它返回的是“NaN,NaN”而不是实际坐标,我不知道它从哪里读取,因为它没有找到一个数字。我的内半径和外半径在arc变量中定义。有什么帮助吗

(请原谅,这里没有JSFIDLE,但我是从.csv中提取数据的)


终于明白了。arc.centroid函数需要预计算的startAngle和endAngle数据,这是饼图(数据)的结果。因此,以下几点帮助了我:

var text = svg.selectAll("text")
                    .data(pie(data))
接下来是其余的电话。请注意,您可能必须更改访问要显示的文本数据的方式。你可以随时与我核对

// while adding the text elements
    .text(function(d){ console.log(d); return d.data.textAttribute })
// while adding the text elements
    .text(function(d){ console.log(d); return d.data.textAttribute })