我有一个图表,其中一些文本使用 textPath 沿着其中一条路径编写。但是,我的问题是:我需要文本位于文本路径的另一侧,即位于其下方。
这是一个例子:
我需要此处的文本位于纯蓝色区域内。即,因此您实际上可以阅读它。这里的蓝色弧线是 textPath。换句话说,我只想将文本向下移动大约 20 像素。
真正让我困惑的是,我可以在文本上设置一个“x”属性并左右移动,但我不能设置一个“y”属性来上下移动它。
我想不通。任何人都可以帮忙吗?
这是我的代码
var labels = svg.selectAll("text.label")
.data(partition.nodes(data))
.enter()
.append("text")
.attr("class", "label")
.attr("x", 10)
.attr("stroke","black")
.style("background-color",'white')
labels.append("textPath")
.attr("xlink:href", function(d) { return '#' + d.name })
.text(function(d) { return d.name.capitalize() })