Я пытаюсь добавить заголовки в верхней части каждого прямоугольника, в котором есть имя родителя. Я пытаюсь следовать этому примеру 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