2012-06-22 46 views
3

我有一個窗體,點擊提交後,使用d3生成一個svg(在刪除舊的svg後)。我怎樣才能讓svg位於瀏覽器窗口的左上角,而不是在窗體下面?這是刪除的代碼,然後在每次提交時生成一個新的svg。在瀏覽器窗口中更改d3 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] + ")"); 

w,h和m分別是寬度,高度和邊距。

我想我可能不得不使用某種樣式標籤,但是我在github上的d3 wiki中找不到任何樣式信息。更一般地說,是否有更多的d3信息對圖形新手有所幫助?

回答

6
d3.select("body").append("svg:svg") 

這會選擇主體並將svg附加到結尾,以便它出現在內容的末尾。

如果你用一個id元素(比如div元素)替換「body」,它會將svg附加到該div。然後,DIV,可以放置在你想要的。

d3.select("#id").append("svg:svg") 
+0

謝謝!這工作完美!我並沒有100%理解「身體」部分的含義,而我主要是抄襲它。我認爲這意味着頁面上有一些更大的空間。我在頂部放了一個div,並將其連接到它,它運行得非常好。 – user1474218

相關問題