如何在 D3 中获取特定的转换属性

how to get specific transform attribute in D3

全部:

我想知道如何获得 SVG 单独的变换属性,例如: 翻译 Scale 等而不是 D3 中的整个转换字符串。

与样式一样,我可以使用样式("background-color") 来获取单独的背景颜色而不是整个样式字符串。

是否有任何类似的API或方法可以应用于转换属性?

谢谢

您可以使用d3.transform(),例如

var t = d3.transform(element.attr("transform"));
t.translate;

只需更改属性即可将矩形移动到您想要的位置:)

 var rect = d3.select('rect')
    .attr('x', 400) //move in x direction 
    .attr('y', 200) //move in y direction
    ;

或变换:

var shape = 'rect' //or any other shape SVG shape you want to select
var x = 200, y= 300; // translate variables

    var rect = d3.select(shape)
    //.attr("transform", "translate(x,y)")
    .attr("transform", "translate(" + x + "," + y + ")");
    ;