Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/455.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 使用新数据更新图表不起作用_Javascript_D3.js - Fatal编程技术网

Javascript 使用新数据更新图表不起作用

Javascript 使用新数据更新图表不起作用,javascript,d3.js,Javascript,D3.js,我正在用一些初始数据绘制一个条形图,然后尝试在单击按钮时进行更新。我得到错误“UncaughtTypeError:无法读取未定义的属性'length'。单击“更新”按钮后发生错误。如何修复此问题并启用更新功能以绘制新条形图 <div id="chart"></div> <button id="update" onclick="update()">Update</button> 问题是update函数需要一个数据数组作为参数,但调用它时没有参数。

我正在用一些初始数据绘制一个条形图,然后尝试在单击按钮时进行更新。我得到错误“UncaughtTypeError:无法读取未定义的属性'length'。单击“更新”按钮后发生错误。如何修复此问题并启用更新功能以绘制新条形图

<div id="chart"></div>
<button id="update" onclick="update()">Update</button>

问题是update函数需要一个数据数组作为参数,但调用它时没有参数。 您可以像这样使用d3添加按钮单击侦听器

d3.select("#update").on("click", function(){ update(newData); })

为您创建了一个

谢谢Daniela!我更新了上面的js,以反映使其工作的更改。将解决方案编辑到问题中会彻底破坏答案,从而消除问题!我只是回滚编辑以显示初始问题。您已经将答案标记为有用,这是指示最佳解决方案的正确方式。
d3.select("#update").on("click", function(){ update(newData); })