如何在 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);
每个节点都有一个编码形状(“rect”、“circle”等)。但是,我收到错误:
Uncaught TypeError: Object function (d){return "circle";} has no method 'indexOf'
我与之相关的另一个问题是:如何在为每个形状应用不同属性之间切换?圆需要一个“r”属性细化,但矩形需要“高度”和“宽度”。谢谢!
最佳答案
使用 d3.svg.symbol ,如 force-directed symbols例子。
关于svg - d3.js 力有向图的不同节点符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15855794/