如何在d3图中向边添加标签

时间:2013-10-13 11:09:23

标签: javascript svg d3.js

请看 http://bl.ocks.org/rkirsling/5001347

它显示了一些节点及它们之间的边缘。你能告诉你要添加哪些代码以及边缘有标签的地方。您可以为标签假设任何合适的位置,您也可以假设任何标签文本。 谢谢。

1 个答案:

答案 0 :(得分:4)

您可以像添加链接本身的路径一样添加标签。您需要做的就是根据链路连接的两个节点的位置计算位置。代码看起来像这样。

svg.selectAll("text").data(links).enter()
   .append("text")
   .attr("x", function(d) { return d.source.x + (d.target.x - d.source.x)/2; })
   .attr("y", function(d) { return d.source.y + (d.target.y - d.source.y)/2; })
   .text(function(d) { return d.something; });

请注意,在tick功能中,您还需要更新标签的位置。