我在D3中的树形图中创建了一些路径,我想改变线条(路径)的颜色,但我无法使代码工作:
// Enter any new links at the parent's previous position.
link.enter().insert("svg:path", "g")
.attr("class", "link")
.attr("d", function(d) {
var o = {x: source.x0, y: source.y0};
return diagonal({source: o, target: o});
})
.transition()
.duration(duration)
.attr("d", diagonal);
// Transition links to their new position.
link.transition()
.duration(duration)
.attr("d", diagonal);
// Transition exiting nodes to the parent's new position.
link.exit().transition()
.duration(duration)
.attr("d", function(d) {
var o = {x: source.x, y: source.y};
return diagonal({source: o, target: o});
})
.remove();
我尝试使用以下内容进行更改,并且我已经查找了其他一些解决方案,但我无法理解在更新选择中需要选择哪些内容来更改它。
link.selectAll("path")
.attr("stroke", "#000000");
感谢您的帮助。
答案 0 :(得分:4)
我刚开始使用d3,但我认为你需要使用link.style(“stroke”,#xxxxxx)。
答案 1 :(得分:0)
svg可以通过使用fill属性来改变颜色(即使是svg的子节点,路径属性也是如此)
background-image:url('dead.beef');
background-size: 100% 100%;
background-origin:border-box;
工作代码供您参考:
https://jsfiddle.net/pjrc0yy3/1/