我在尝试将文本定位在基于 d3.js 的 Sunburst 图表的楔形内时遇到问题text
。即使在缩放时,元素似乎也没有按需要定位..
这是我尝试但未成功的代码的简短片段:
var slices = svg.selectAll(".form")
.data(function(d) { return data_slices; })
.enter()
.append("g");
slices.append("path")
.attr("d", arc)
.attr("id",function(d,i){return d[2]+""+i;})
.style("fill", function(d) { return color(d[2]);})
.on("click",animate)
.attr("class","form")
.append("svg:title")
.text(function(d) { return Math.round(d[0]*100)/100 +" , "+ Math.round(d[1]*100)/100; });
//Something needs to change below....
slices.append("text")
.style("font-size", "10px")
.attr("x", function(d) { return y(d[1]); })
.attr("transform", function(d) { return "rotate(" + this.parentNode.getBBox().width + ")"; })
.attr("dx", "6") // margin
.attr("dy", ".35em") // vertical-align
.text(function(d){return d[2]})
.attr("pointer-events","none");
这是图表的小提琴
小提琴可能有什么问题?任何人都可以告诉我或指导我如何定位<text>
内部 svg <path>
。看起来解决方案是对此的一个小调整,但即使尝试了很长时间我也无法做到。
任何有关解决方案方向的帮助/评论将不胜感激......在此先感谢......