-1
我有一个强制布局图形,可以正确绘制边缘和节点。问题在于边缘的标签。它们被绘制在错误的位置上,并且在图形移动时它们不会沿着边缘移动。你可以看到演示[here](https://jsfiddle.net/calebgrangel/bgprcdpx/11/)。 有趣的是,动态创建的边缘可以正确显示边缘标签。 我通过浏览器检查了SVG元素,发现了正确的和错误的比较。 edgelabel
的transform
方法存在问题,但不知道如何解决该问题。D3.js强制布局路径标签沿边缘移动不正确
<text class="edgelabel" id="edgelabel3" dx="80" dy="0" font-size="15" fill="#aaa" style="pointer-events: none;" transform="rotate(180 615.890625 381.9453125)"><textPath xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#edgepath3" style="pointer-events: none;">50</textPath>
</text>
和错误的一个是
<text class="edgelabel" id="edgelabel2" dx="80" dy="0" font-size="15" fill="#aaa" style="pointer-events: none;"><textPath xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#edgepath2" style="pointer-events: none;">30</textPath></text>
在更新的小提琴,当我点击添加新的节点和边缘按钮的节点5未添加。此外,当我点击重新启动图表按钮,我有这个'错误:属性d:预期的数字,“M undefined unde ...”。 attrFunction @ d3.v3.js:670' –
Caleb
好吧,这是另一个**问题。我只是向你展示了问题标题中提到的问题的确切原因,我甚至展示了一个解决方案,可以正确解决**特定问题。我没有重构你的代码以适应修复,这超出了这个问题的范围。 –