0
我想在每個矩形的頂部添加標題,這些標題的父級名稱都是在這些矩形的頂部。我試圖按照這個例子https://bl.ocks.org/deenar/336efdeb97f1c79d4a6b,但老實說,不正確地理解它,因爲我還是D3的新手。D3樹形圖標頭
目前我已經添加下面添加一個頭,但似乎並沒有顯示任何東西:
var header = nodes.filter(function(d) {
return !d.children;
});
var headerCells = svg.selectAll("g.cell.header")
.data(header, function(d) { console.log("gf"+name);
return d.name;
});
var headerEnterTransition = headerCells.enter()
.append("g")
.attr("class", "cell header")
.on("click", function(d) {
zoom(d);
});
headerEnterTransition.append("rect")
.attr("width", function(d) {
return Math.max(0.01, d.dx);
})
.attr("height", headerHeight)
.style("fill", "red");
headerEnterTransition.append('foreignObject')
.attr("class", "foreignObject")
.append("xhtml:body")
.attr("class", "labelbody")
.append("div")
.attr("class", "label");
我可以得到一個長方形頭顯示,如果我改變:
var header = nodes.filter(function(d) {
return d.children;
});
收件人:
var header = nodes.filter(function(d) {
return !d.children;
});
但是,這會導致treemap圖表消失,然後出現一個可點擊的矩形,然後擴展一次點擊。完整的代碼可以在這裏找到:https://jsfiddle.net/noobiecode/9ev9qjt3/33/
我希望我沒有困惑任何人,因爲我確實有這樣做的傾向。在任何情況下,這裏就是我想要實現:
我在那裏我完全摸不着頭腦,並希望如果有人應該擺脫對此事的一些光點。
我希望父(文本)的名字在上面,一旦這樣的例子https://bl.ocks.org/deenar/336efdeb97f1c79d4a6b。非常感謝您的幫助。 – user3837019