Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/410.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 D3.csv读入承诺_Javascript_D3.js_Promise - Fatal编程技术网

Javascript D3.csv读入承诺

Javascript D3.csv读入承诺,javascript,d3.js,promise,Javascript,D3.js,Promise,我正在研究Scott Murray的交互式网络数据可视化。这本书以d3版本4为中心,我尝试使用d3版本5。我不熟悉javascript,但在我了解到版本4和版本5之间的主要区别之前,它一直运行得相当顺利,这就是通过承诺读取数据 我一直坚持下去。我已经做了我认为是适当的更改,查看其他示例,例如和 我尝试了两种方法 第一个仅更改上面链接示例中的第36行 它有: d3.csv("time_scale_data.csv", rowConverter, function(data) { 我有: d3.c

我正在研究Scott Murray的交互式网络数据可视化。这本书以d3版本4为中心,我尝试使用d3版本5。我不熟悉javascript,但在我了解到版本4和版本5之间的主要区别之前,它一直运行得相当顺利,这就是通过承诺读取数据

我一直坚持下去。我已经做了我认为是适当的更改,查看其他示例,例如和

我尝试了两种方法

第一个仅更改上面链接示例中的第36行

它有:

d3.csv("time_scale_data.csv", rowConverter, function(data) {
我有:

d3.csv("time_scale_data.csv", rowConverter).then(function(data){...
第二种方法是尝试将所有内容封装在一个异步函数中,正如我所看到的,因此开始是

async function makePlot(){
            //Load in the data
                const dataset = await d3.csv("time_scale_data.csv", rowConverter)
我两方面都得到相同的结果。它为每个数据点呈现一些svg文本Dec 31,但Dec 31甚至不是一个点,我可以在控制台中看到值,但没有一个值与我的csv匹配

我如何才能与承诺一起工作

更新: 这是令人尴尬的,但我会留下这个例子,如果其他人正在与此斗争


以上工作。我在csv中错误地标记了一列,并对其进行了更正,但即使进行了硬刷新,它仍然无法修复它,我需要硬刷新并删除缓存。我生命中的多个小时:(

确保CSV的第一行包含分隔符分隔的列名列表。谢谢@Jaime,代码现在可以工作了。我在复制CSV时没有粘贴完整的列名,并且已经更正了,但它仍然在缓存中。自那以后,一切都正常了。