我已经使用D3导入了CSV文件,“大学”,“州”,“薪水”和“类型”是我需要进行更多可视化处理的值。 现在,我试图创建一个导入上述四个属性的新数组。
我使用创建一个新数组 var SalaryArray = []
通过返回我需要使用的属性,我已经导入了CSV文件
d3.csv("Median Salary Integration 2018.csv")
.row(function (d) {
return {University: String(d.University), State: String(d.State),Salary: String(d.Median), Type: String(d.Type)}
我尝试了
SalaryData = d3.csv("Median Salary Integration 2018.csv")
.row(function (d) {
return {
University: String(d.University), State: String(d.State),
Salary: String(d.Median), Type: String(d.Type)
}
})
但是通过console.log(SalaryData),结果不会显示。
答案 0 :(得分:1)
The documentation shows是您在回调中获得值,而不是作为返回值:
d3.csv("Median Salary Integration 2018.csv")
.row(function (d) {
return {
University: String(d.University), State: String(d.State),
Salary: String(d.Median), Type: String(d.Type)
}
})
.then(salaryData => {
// ***Use salaryData here***
// It will be an array, so for instance
for (const entry of salaryData) { // Loop through the array
// Use `entry.University`, etc., here
}
})
.catch(error => {
// Handle/report error
});
文档说:
此模块在
Fetch
之上提供了方便的解析。
...因此您从csv
获得的回报是一个承诺,而不是实际数据,因为该过程是异步的。因此,上面的then
和catch
。