2013-10-13 5 views
5

内のエッジにラベルを追加する方法 http://bl.ocks.org/rkirsling/5001347D3グラフ

を参照してくださいそれはいくつかのノードとそれらの間のエッジを示しています。どのコードを追加すればいいのか、どこにラベルがあるのか​​を教えてください。ラベルの適切な場所を想定することができ、任意のラベルテキストを想定することもできます。 ありがとうございます。

答えて

4

リンク自体のパスを追加するのと同じようにラベルを追加できます。リンクが接続する2つのノードの位置に基づいて位置を計算するだけです。コードは次のようになります。

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機能では、ラベルの位置も更新する必要があります。

+0

tick()関数のすぐ上に、つまりグローバルに、tick関数内に、Restart関数内に(force.startを呼び出す直前に)コードを書きました。しかし、どういうわけか私はラベルテキストを見ていません。私が間違っていることを教えてください。 – Avinash

+0

完全なコードを教えてください。 –

+0

完全なコードが長すぎますが、JavaScriptコードの に基づいています。http://bl.ocks.org/rkirsling/5001347 http://bl.ocksにあなたのソリューションを置く場所を教えてください.org/rkirsling/5001347? 私は自分のコードの関連部分を抽出できるかどうかを確認しようとしています。 – Avinash