我想在d3中创建以下内容:
<g>
<rect class="rect1"></rect>
<rect class="rect2"></rect>
</g>
我正在尝试:
rectangles
.selectAll('g')
.data(data)
.enter()
.append('g')
.append('rect')
.addClass('rect1')
.append('rect')
.addClass('rect2')
然而它正在这样做:
<g>
<rect class="rect1">
<rect class="rect2"></rect>
</rect>
</g>
如何在同一级别为每个组插入多个矩形?
答案 0 :(得分:4)
你想要这样的东西。您需要保留对g元素的引用,以便可以在其上创建多个子元素。
g = rectangles
.selectAll('g')
.data(data)
.enter()
.append('g')
g.append('rect')
.addClass('rect1')
g.append('rect')
.addClass('rect2')
答案 1 :(得分:0)
您可以先添加ss <- subset(data, levels == l1 | levels == l2 | levels == l3)
ss$levels <- as.factor(as.character(ss$levels))
boxplot(fbest ~ levels, data = ss, pch = 16, cex = 2)
,然后为每个数据添加一个矩形,动态设置每个矩形的类。例如:
<g>