私は、リンクに沿ってテキストラベル付きのD3強制有向視覚化を構築しました。私が実行している1つの問題は、リンクがソースノードの左側にあるときにこれらのラベルが上下逆に表示されることです。ここでは例:D3リンクのテキストを右側に表示
私はパスやテキストを配置コードはそうのようになります。
var nodes = flatten(data);
var links = d3.layout.tree().links(nodes);
var path = vis.selectAll('path.link')
.data(links, function(d) {
return d.target.id;
});
path.enter().insert('svg:path')
.attr({
class: 'link',
id: function(d) {
return 'text-path-' + d.target.id;
},
'marker-end': 'url(#end)'
})
.style('stroke', '#ccc');
var linkText = vis.selectAll('g.link-text').data(links);
linkText.enter()
.append('text')
.append('textPath')
.attr('xlink:href', function(d) {
return '#text-path-' + d.target.id;
})
.style('text-anchor', 'middle')
.attr('startOffset', '50%')
.text(function(d) {return d.target.customerId});
私は何とか各パスの現在の角度を決定する必要があり、その後、設定されます知っていますそれに応じてテキストの位置が、私はどのようにするか分からない。ここで
は、この問題に基づいてブロックへのリンクです:以下http://blockbuilder.org/MattDionis/5f966a5230079d9eb9f4
答えは私が道の約90%を持っています。
...と、ここで、それは以下の回答でヒントを利用し次のようになります。:ここに私の元の可視化は、長いカップルの桁数よりもテキストを持つように見えるものである
テキストが「右上がり」になっても、もはや円弧をたどることはありません。
https://stackoverflow.com/questions/8663844/add-text-label-onto-links-in-d3-force-directed-graph –