我想添加单独的箭头(一个用于从节点A到B的路径,另一个用于B到A)到我已经制作的d3图形(参见Plunker版本here),而不是在每一端添加一个带有两个箭头的箭头。
我已经尝试了代码here,通过更改我的' tick'函数,以及定义路径变量如下:
var path = svg.append("svg:g").selectAll("path")
.data(force.links())
.enter().append("svg:path")
.attr("class", "link")
.attr("marker-end", "url(#end)");
function tick() {
path.attr("d", function(d) {
var dx = d.target.x - d.source.x,
dy = d.target.y - d.source.y,
dr = Math.sqrt(dx * dx + dy * dy);
return "M" +
d.source.x + "," +
d.source.y + "A" +
dr + "," + dr + " 0 0,1 " +
d.target.x + "," +
d.target.y;
});
然而,这似乎阻止了节点的显示,以及缩放/过滤功能。
有谁知道如何阻止这种情况发生?
最佳,
本