如何使用d3.csv加载变量而不是文件?

如何使用d3.csv加载变量而不是文件?,csv,d3.js,Csv,D3.js,我正在使用D3.js加载csv文件。应该是这样的: id, a, b, var flare = 'id,\na,\nb,\n' 但是csv是在我的代码中创建的,所以我将其存储在如下变量中: id, a, b, var flare = 'id,\na,\nb,\n' 但是,脚本不起作用: d3.csv(flare, function(error, data){ if(error) throw error; }); 如何解决问题?根据您将要使用的D3版本,您必须选择适当的功能: v3.

我正在使用D3.js加载csv文件。应该是这样的:

id,
a,
b,
var flare = 'id,\na,\nb,\n'
但是csv是在我的代码中创建的,所以我将其存储在如下变量中:

id,
a,
b,
var flare = 'id,\na,\nb,\n'
但是,脚本不起作用:

d3.csv(flare, function(error, data){
  if(error) throw error;
});

如何解决问题?

根据您将要使用的D3版本,您必须选择适当的功能:

v3.x 在3.x版中,您需要的是:

解析指定的字符串(CSV文件的内容),返回表示已解析行的对象数组

以你为例,这将是

var flare = 'id,\na,\nb,\n';
var data = d3.csv.parse(flare);
v4+ 对于版本4及更高版本,CSV解析器已成为模块的一部分。该函数现在命名为


生成的csv变量是否与d3.csv函数位于同一页面?只是不要使用d3.csv,而是使用flare作为data@echonax是的,它是通过同一个javascript文件中的http请求获得的。谢谢!但是,我不能在最新发布的d3版本中使用d3.csv.parse,其中说“d3.csv.parse不是一个函数”。@Sijiaoi我已经编辑了我的答案,以包含d3 v4的解决方案。