使用D3为路径添加标签

时间:2014-10-22 12:32:37

标签: d3.js

我正在使用D3构建图形,并将节点之间的链接表示为路径。我想使用以下代码为每个路径添加标签:

path_labels = path_labels.data(links);
path_labels.enter().append("text")
                    .attr("class", "linklabel")
                    .style("font-size", "12px")
                    .attr("text-anchor", "start")
                    .append("textPath")
                    .attr("xlink:href", function (d) {
                        return "#linkId_0";
                    })
                    .text(function (d) {
                        return "my text"; 
                    });

当我查看结果时,会附加文本,但不会附加文本元素中的textPath。

有人可以帮忙吗?

完整代码可在http://jsfiddle.net/3u0oage7/

找到

1 个答案:

答案 0 :(得分:1)

我找到了问题的答案。我发布的代码按照假设运行。问题是我的代码中有这个:

svg.selectAll('text').
                    text(function (d) {
                        return d.label;
                    });

此代码正在更改所有文本元素。我更改了选择器,因此它只选择与圆相对应的文本元素。