我有一个g元素,我试图通过将圆的cx和cy位置给g元素放在我的圆元素的顶部。但是,这不起作用,因为g使用translate。知道如何将像素转换为翻译吗?
colorPickerX = d3.select(dataPointId).attr("cx");
colorPickerY = d3.select(dataPointId).attr("cy");
var svg = d3.select("body")
.append("svg")
.attr("width", 300)
.attr("height", 300)
.append("g")
.attr("transform", "translate("+colorPickerX+","+colorPickerX+")"); \\This is wrong because Cx and Cy are Pixels
答案 0 :(得分:1)
使用parseFloat执行此操作:
//parseFloat will get the number and ignore the px in the end.
colorPickerX = parseFloat(d3.select(dataPointId).attr("cx"));
colorPickerY = parseFloat(d3.select(dataPointId).attr("cy"));
然后使用它来翻译g组,如上所述。