Javascript D3.csv未加载csv文件
由于某些原因,我无法使用d3.csv(…)函数加载任何.csv文件。我所做的是使用上面的函数加载一个csv文件,并将数据直接打印到控制台 我就是这么做的:Javascript D3.csv未加载csv文件,javascript,html,node.js,d3.js,Javascript,Html,Node.js,D3.js,由于某些原因,我无法使用d3.csv(…)函数加载任何.csv文件。我所做的是使用上面的函数加载一个csv文件,并将数据直接打印到控制台 我就是这么做的: 我使用记事本创建了一个名为irisData.csv的文件。它包括来自iris数据集的一些数据 我在我的irisTest.html中编写这段代码,将数据打印到控制台中,检查它是否正常工作 ... d3.csv("irisData.csv", type, function(error, data){ console.log(data);
...
d3.csv("irisData.csv", type, function(error, data){
console.log(data);
});
...
var http = require('http');
fs = require('fs');
http.createServer(function(req, res){
fs.readFile('./irisTest.html', function(err, data){
if(err){
res.writeHead(500, {'Content-type': 'text/plain'});
res.end('500 - Internal Error');
}else{
res.writeHead(200, {'Content-type': 'text/html'});
res.end(data);
}
});
}).listen(3000);
[
{data...}
{data...}
{data...}
...
]
然而,我得到的是封装到对象中的irisTest.html(即html代码本身)的代码。我意识到,我把什么代替中的“irisData.cvs”作为d3.csv(“irisData.csv”,…)中的路径并不重要,它总是输出我自己的代码,如下所示。所以我认为csv文件的路径可能有问题,但不应该有问题。所有文件都在同一文件夹中
[
...
{<!DOCTYPE html>: "d3.csv("irisData.csv", type, function(error, data){"}
{<!DOCTYPE html>: "console.log(data);"}
{<!DOCTYPE html>: "});}"}
...
]
[
...
{:“d3.csv”(“irisData.csv”),类型,函数(错误,数据){”
{:“console.log(数据);”}
{: "});}"}
...
]
有人知道发生了什么事吗 如文档中所述,应使用匿名函数,而不是
类型
。我引用文件中的例子:
d3.csv("example.csv", function(d) {
return {
year: new Date(+d.Year, 0, 1), // convert "Year" column to Date
make: d.Make,
model: d.Model,
length: +d.Length // convert "Length" column to number
};
}, function(error, rows) {
console.log(rows);
});
因此,在您的情况下,读取csv文件的方式如下:
d3.csv("irisData.csv",function(data){
console.log(data);
},function(error, rows){
console.log(rows);
});
下面是中的一个工作示例,请检查控制台以查看数据对象 是的,问题中仍然有一些CV需要编辑(在问题下方的小链接中单击编辑),如果这不是问题所在。也许,也许你也应该在你的代码或数据文件目录中搜索简历,看看是否有打字错误。我已经编辑了这个问题,并查找了文件名和代码中的任何打字错误。没有找到。您是否在节点中正确使用D3?我看不到
vard3=require(“d3”)代码>。请看一下这个答案:我在youtube上看了一个名为“D3简介”的教程,D3.cvs(“irisData.csv”,type,function(data){..});应该有用。然而,我确实尝试过你的方式。它仍然输出和以前一样的东西,没有任何变化。
d3.csv("irisData.csv",function(data){
console.log(data);
},function(error, rows){
console.log(rows);
});