Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Marimekko图表单元格标题未更新_Javascript_D3.js_Charts_Marimekko Chart - Fatal编程技术网

Javascript Marimekko图表单元格标题未更新

Javascript Marimekko图表单元格标题未更新,javascript,d3.js,charts,marimekko-chart,Javascript,D3.js,Charts,Marimekko Chart,我正在对泰坦尼克号数据集进行可视化,经过一些搜索,我发现马里梅科海图是该数据集的最佳可视化 我查看并开始对代码进行一些调整,以使其符合我的需要。我的问题是单元格标题(鼠标悬停在单元格后出现的标题)不更新值。第一次调用函数chart正确绘制标题,然后当我尝试使用transition函数更改单元格值时,图表会正确设置动画,但单元格标题中的值不会更改,当我将鼠标悬停在图表上时,它们仍然具有旧值 转换函数的最后一行是: cellEnter.append("title") .text(fu

我正在对泰坦尼克号数据集进行可视化,经过一些搜索,我发现马里梅科海图是该数据集的最佳可视化

我查看并开始对代码进行一些调整,以使其符合我的需要。我的问题是单元格标题(鼠标悬停在单元格后出现的标题)不更新值。第一次调用函数chart正确绘制标题,然后当我尝试使用transition函数更改单元格值时,图表会正确设置动画,但单元格标题中的值不会更改,当我将鼠标悬停在图表上时,它们仍然具有旧值

转换函数的最后一行是:

cellEnter.append("title")
        .text(function(d) { return d.children ? null : title(d); });
这似乎在第一次绘制图表时起作用,但当单元格数据更改时,它不会更新标题

有没有办法解决这个问题

如果您想了解我所做的更改,请看一个工作示例


我刚刚对Jason的原始代码做了几处小改动以表明我的观点。

正如@Lars Kotthoff在评论中指出的那样,转换函数的最后一行应该更改为:

cellEnter.append("title");
cellUpdate.select("title")
  .text(function(d) {
    return d.children ? null : title(d);
  });

你的codepen说,
draw
没有定义,不能为我运行。对不起,我不知道如何在codepen上运行它,这是完整的index.html,你可能需要指定一个键函数(第二个参数是
.data()
),告诉D3如何匹配数据和DOM元素。嗯,不确定你的意思是什么,你说的是
.data(treemap.nodes)?啊,好的,看起来问题在于标题只是第一次附加,没有更新。你应该做你想做的。