我想用两种形状的节点作为力图:rect
和circle
,形状信息在d.shape
。这里有几条线索,但解决方案对我来说不是很清楚。追加不同的形状
我第一次尝试使用merge
方法,它不起作用:在此jsbin,var circlesANDrects = rects
显示矩形和var circlesANDrects = circles
显示圈,而var circlesANDrects = circles.merge(rects)
不显示两者。
有谁知道如何解决这个问题?
否则,我认为这个想法的解决办法是使用一个街区,append
不同的形状根据形状信息:
var circlesANDrects = svg.append("g").selectAll("rect circle")
.data(force.nodes())
.enter()
<!-- a function that appends different shapes according to shape information -->
有谁知道如何例/条件添加到append
?
但如果我要指定一些'attr'什么(例如,'width'和'height')属于'rect'但不'circle' ? – SoftTimur
不幸的是,“方形”符号没有“宽度”或“高度”,只是“大小”。但是你可以使用一个函数来设置不同符号的大小(圆形,方形等)。 –
那么我们只能在这里指定圆和方的常见属性? – SoftTimur