我已经修改了来自http://bost.ocks.org/mike/sankey/的 D3.Js 中 Sankey 图的 Mike Bostok 示例,以显示每个节点的值,如下所示:
桑基 http://uweb.cs.uvic.ca/~maleh2/sankey.png
node.append("text")
.attr("class","nodeValue");
///align vertically??
node.selectAll("text.nodeValue")
.attr("x", sankey.nodeWidth() / 2)
.attr("y", function (d) { return (d.dy / 2) })
.text(function (d) { return formatNumber(d.value); })
.attr("text-anchor", "middle");
//.attr("transform", "rotate(-90)")
Mike 示例中的所有代码和我的修改都位于 jsfiddle ( http://jsfiddle.net/4xNK5/ )。我的问题是如何垂直显示节点的值?我假设一个简单的 .attr("transform", "rotate(-90)"); 会做的。实际上,我得到了垂直对齐但不合适的节点的值。我无法理解其背后的逻辑。任何想法,将不胜感激...