Javascript 为冰柱可视化添加大小

Javascript 为冰柱可视化添加大小,javascript,d3.js,data-visualization,Javascript,D3.js,Data Visualization,我在这里进行D3可视化: 如何在标签旁边添加每个框的大小,如此处所示: 我对代码理解得不够透彻,不知道在哪里追加代码。我假设是这样的: cell.append("title") .text(d => `${d.ancestors().map(d => d.data.name).reverse().join("/")}\n${format(d.value)}`); 但是可观察的格式让我很反感。如果您想添加一个元素,每个框的值(您称之为“大小”)就是: selection

我在这里进行D3可视化:

如何在标签旁边添加每个框的大小,如此处所示:

我对代码理解得不够透彻,不知道在哪里追加代码。我假设是这样的:

cell.append("title")
      .text(d => `${d.ancestors().map(d => d.data.name).reverse().join("/")}\n${format(d.value)}`);

但是可观察的格式让我很反感。

如果您想添加一个
元素,每个框的值(您称之为“大小”)就是:

selection.append("title")
    .text(d => d.value);
关于可观察到的那条线

.text(d => `${d.ancestors().map(d => d.data.name).reverse().join("/")}\n${format(d.value)}`);
。。。您不能使用它,因为
祖先()
是D3 v4/v5的一种方法,并且您链接的bl.ock使用v3。除此之外,这

d.ancestors().map(d => d.data.name).reverse().join("/")
。。。does是获取所有父对象的名称并将其反转(如果您查看可观察对象,您将看到在值上方有从根到当前框的序列。因此,您不需要它,只需要模板文本中的第二行:

format(d.value)

以下是您与该更改链接的bl.ock:

您是指每个框中名称旁边的数字吗?如果是,则其代码为.text(d=>
${format(d.value)}
);很抱歉,我无法正确设置上述代码的格式,因为代码本身包含“Character”。非常感谢您提供了完整的答案。是否可以将大小放在名称旁边,而不是作为工具提示?是的,可以。