所以我是d3的新手,我根据数据绘制了多组形状。像
这样的东西 polygons = d3.selecctAll("g").data(data);
现在,我想翻译和缩放组,但polygons.attr("scale" ...)
只在画布原点周围缩放,我希望它围绕组的中心缩放。因此,如果某个群组以(cx, cy)
为中心,那么我需要按此顺序添加transate(-cx, -cy)
,scale(2.0)
,translate(cx, cy)
之类的内容。之后我还想再次翻译这个小组。但是,我只能做一个刻度然后使用
polygons.attr("transfrom", "translate(...) + " " + scale(...)");
我如何按照我选择的顺序堆叠转换?任何帮助表示赞赏,提前谢谢!