use*_*864 6 svg graph nodes d3.js force-layout
如何在d3.js的强制定向库中将节点显示为不同的符号?我想实现类似于我在下面写的内容:
var node = svg.selectAll(".node")
.data(graph.nodes)
.enter().append(function(d){return d.shape;})
.attr("class", "node")
.attr("r", 5)
.style("fill", function(d) { return color(d.group); })
.call(force.drag);
Run Code Online (Sandbox Code Playgroud)
每个节点都有一个编码形状("rect","circle"等).但是,我收到错误:
Uncaught TypeError: Object function (d){return "circle";} has no method 'indexOf'
Run Code Online (Sandbox Code Playgroud)
我与之相关的另一个问题是:如何在为每个形状应用不同属性之间切换?圆圈需要精炼"r"属性,但rects需要"height"和"width".谢谢!