Если вы хотите добавить элемент <title>
со значением (которое вы назвали «размер») каждого блока, все, что вам нужно:
selection.append("title")
.text(d => d.value);
Относительно этой строки в Observable ...
.text(d => `${d.ancestors().map(d => d.data.name).reverse().join("/")}\n${format(d.value)}`);
... вы не можете использовать его, потому что ancestors()
- это метод D3 v4 / v5, а связанные с вами bl.ocks используют v3.Кроме того, то, что это ...
d.ancestors().map(d => d.data.name).reverse().join("/")
... делает, получает имя всех родителей и меняет его (если вы посмотрите на наблюдаемое, вы увидите, что над значением у вас есть последовательностьот корня к текущему блоку. Поэтому он вам не нужен, все, что вам нужно, это вторая строка в литерале шаблона:
format(d.value)
Вот блокс, который вы связали с этим изменением: https://bl.ocks.org/GerardoFurtado/3bc4b6c7260d131ed78a5922700fc633/5ba087da8a55063c58a66314dadafd06585b1329