Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.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 阅读D3V5JS中的CSV:为什么我在抓取数据时遇到问题?_Javascript_D3.js_Promise - Fatal编程技术网

Javascript 阅读D3V5JS中的CSV:为什么我在抓取数据时遇到问题?

Javascript 阅读D3V5JS中的CSV:为什么我在抓取数据时遇到问题?,javascript,d3.js,promise,Javascript,D3.js,Promise,我想将导入的数据从CSV写入网页。我可以用传统的方法读取CSV,如下所示: d3.csv("day.csv",function(data) { d3.select("ul").append("li") .text(data.Endangered).style("color","brown"); }); 然而,当我尝试使用D3V5的最新方法时,它对我不起作用 d3.csv("day.csv").then(function(data) { d3.select("ul").

我想将导入的数据从CSV写入网页。我可以用传统的方法读取CSV,如下所示:

  d3.csv("day.csv",function(data) {
  d3.select("ul").append("li")
  .text(data.Endangered).style("color","brown");
 });
然而,当我尝试使用D3V5的最新方法时,它对我不起作用

 d3.csv("day.csv").then(function(data) {
     d3.select("ul").append("li")
    .text(data.Endangered).style("color","brown");
  });

也许我做的不对。

您没有迭代数据。在D3中,应该将数据加入到选择中,然后根据数据创建DOM节点

也许这会有帮助:

d3.csv("day.csv").then(function(data) {
  d3.select("ul") // where dom nodes will be appended
  .selectAll("li") // elements that should be bound with array items
  .data(data) // add array with data
  .enter() // join data and selection nodes
  .append("li") // If data has more indexes than your li selection, the missing elements will be created
  .text(d => d.Endangered)
  .style("color","brown");
});

如果您有CORS问题,是否查看了控制台?查看服务器日志,查看您的请求是否已到达仅供将来参考,已接受的答案与问题中的问题无关。不管怎样,我投票决定关闭它……我们可以看到这是一个有用的答案。然而,它并没有回答这个问题:为什么OP的代码在v5中不能与then方法一起工作,而在v4中却与回调一起工作?OP的代码片段太短,无法得出结论。老实说,仅凭给出的代码,我甚至不知道它在v4.0中是如何工作的。因此,在这种情况下,适当的操作是投票结束,因为不清楚或寻求调试帮助的问题必须包含复制它所需的最短代码。然而,我们现在得到的是一个完全断开的Q/a对。感谢您的输入。下次我会更加注意的。但是,我不同意代码完全断开连接,因为要实现D3V5版本所描述的OP,我建议的更改必须进行。太好了。但我不是在谈论代码:我是说问题和答案是不相连的。此外,v4版本也需要进行更改。因此,这与v4/v5的差异无关。