Javascript D3.csv读入承诺
我正在研究Scott Murray的交互式网络数据可视化。这本书以d3版本4为中心,我尝试使用d3版本5。我不熟悉javascript,但在我了解到版本4和版本5之间的主要区别之前,它一直运行得相当顺利,这就是通过承诺读取数据 我一直坚持下去。我已经做了我认为是适当的更改,查看其他示例,例如和 我尝试了两种方法 第一个仅更改上面链接示例中的第36行 它有: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
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时没有粘贴完整的列名,并且已经更正了,但它仍然在缓存中。自那以后,一切都正常了。