这就是为节点制作文本的方法。
node.append("text")
.attr("x", -6)
.attr("y", function(d) { return d.dy / 2; })
.attr("dy", ".35em")
.attr("text-anchor", "end")
.attr("transform", null)
.text(function(d) { return d.name; })
.filter(function(d) { return d.x < width / 2; })
.attr("x", 6 + sankey.nodeWidth())
.attr("text-anchor", "start");
为了使右侧的文本始终执行以下操作:
node.append("text")
.attr("x", -6)
.attr("y", function(d) { return d.dy / 2; })
.attr("dy", ".35em")
.attr("text-anchor", "end")
.attr("transform", null)
.text(function(d) { return d.name; })
//.filter(function(d) { return d.x < width / 2; }) //COMMENT THIS LINE
.attr("x", 6 + sankey.nodeWidth())
.attr("text-anchor", "start");
注释上面显示的行,以便它不会过滤> SVG 宽度一半的节点。
工作代码here http://plnkr.co/edit/Djg5PvYVdxFW8w3E8aAW?p=preview