在 D3 Sankey 图中的最后一个节点之后添加文本
Add text after last node in D3 Sankey diagram
我正在尝试移动我的 Sankey 图上最右边节点的标签以跟随节点而不是移动到节点之前。我正在使用显示的代码 here.
我能够通过如下所示键入过滤器功能行来让文本跟随节点
// add in the title for the nodes
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 + " ("+Math.round(d.value).toLocaleString('en') + ")"; })
//.filter(function(d) { return d.x < width / 2; })
.attr("x", 6 + sankey.nodeWidth())
.attr("text-anchor", "start");
但是,现在这段文字被右边距截断了。即使在调整屏幕宽度时,它仍然被切断。我怀疑代码中有一行最右边的节点位于右边距。我是 1) 试图找到这一行和 2) 试图将其应用于文本而不是节点。
更改
的右边距
var margin = {top: 10, right: 10, bottom: 10, left: 10},
对此:
var margin = {top: 10, right: 90, bottom: 10, left: 10},
工作代码here
我正在尝试移动我的 Sankey 图上最右边节点的标签以跟随节点而不是移动到节点之前。我正在使用显示的代码 here.
我能够通过如下所示键入过滤器功能行来让文本跟随节点
// add in the title for the nodes
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 + " ("+Math.round(d.value).toLocaleString('en') + ")"; })
//.filter(function(d) { return d.x < width / 2; })
.attr("x", 6 + sankey.nodeWidth())
.attr("text-anchor", "start");
但是,现在这段文字被右边距截断了。即使在调整屏幕宽度时,它仍然被切断。我怀疑代码中有一行最右边的节点位于右边距。我是 1) 试图找到这一行和 2) 试图将其应用于文本而不是节点。
更改
的右边距var margin = {top: 10, right: 10, bottom: 10, left: 10},
对此:
var margin = {top: 10, right: 90, bottom: 10, left: 10},
工作代码here