私は D3.js にかなり慣れていないので、強制レイアウトで遊んでいます。私が試したことの 1 つは、リンクにラベルを付けることでした。
これを行う 1 つの方法は、 &を追加svg:text
して手動で計算することです。これは、直線でうまく機能します。ただし、リンクが(たとえばアーク) の場合、これは期待どおりに機能しません。これらの場合、推奨される解決策です。translate
rotate
svg:path
svg:textPath
このデモでは、 を介してリンクにラベルを追加する簡単な実装を確認できますsvg:textPath
。唯一の問題は、ソースがターゲットの右側に配置されている場合、テキストが反対方向にレンダリングされることです (私たちの観点からは、パスの観点からはまだ正しいです)。私の質問は、これにどう対処するかです。
私が思いついた唯一の「解決策」は、上記の場合にソースとターゲットを手動で交換することです。ここでは、ほぼ動作することがわかります。
スワップが発生した状態では、正しく見えない反対側にアークが反転することも確認できます。:(