在浏览器窗口中更改d3 svg框的位置

use*_*218 3 javascript d3.js

我有一个表单,当单击提交时,使用d3生成一个svg(在删除已经存在的旧svg之后).如何使svg位于浏览器窗口的左上角,而不是在窗体下面?这是删除的代码,然后在每次提交时生成一个新的svg.

//(form)
//(function call on form submit)

d3.select("#thesvg").remove();
var svg = d3.select("body")
    .append("svg:svg")
    .attr("width", w + m[1] + m[3])
    .attr("height", h + m[0] + m[2])
    .attr("id", "thesvg")
    .append("svg:g")
    .attr("transform", "translate(" + m[3] + "," + m[0] + ")"); 
Run Code Online (Sandbox Code Playgroud)

w,h和m分别是宽度,高度和边距.

我想我可能不得不使用某种样式标签,但我在github上的d3 wiki中找不到任何样式信息.更一般地说,是否有更多d3信息对图形新手有点偏好?

use*_*478 6

d3.select("body").append("svg:svg")
Run Code Online (Sandbox Code Playgroud)

这将选择正文并将svg附加到末尾,以便它显示在内容的末尾.

如果你用id表示div元素替换"body",它会将svg附加到该div.然后可以将div放在您想要的位置.

d3.select("#id").append("svg:svg")
Run Code Online (Sandbox Code Playgroud)