d3。从javascript数组调用csv url
这方面我是新手。我正在尝试使用jaavascript制作一个简单的交互式图表。其思想是,当我更改选择器中的值时,图表会更改数据所使用的值 然而,我在数据交换方面遇到了麻烦。数据来自不同的URL。这些URL位于CSV文件中。我的代码从CSV文件中提取URL并生成一个数组。然后继续从数组的适当元素调用CSV文件。简化代码:d3。从javascript数组调用csv url,javascript,arrays,csv,url,d3.js,Javascript,Arrays,Csv,Url,D3.js,这方面我是新手。我正在尝试使用jaavascript制作一个简单的交互式图表。其思想是,当我更改选择器中的值时,图表会更改数据所使用的值 然而,我在数据交换方面遇到了麻烦。数据来自不同的URL。这些URL位于CSV文件中。我的代码从CSV文件中提取URL并生成一个数组。然后继续从数组的适当元素调用CSV文件。简化代码: functionThatReturnsArray(){ d3.csv("http//URL.COM", function(){ SomeMoreCode; return Arra
functionThatReturnsArray(){
d3.csv("http//URL.COM", function(){
SomeMoreCode;
return ArrayOfStrings
};)
}
A = functionThatReturnsArray();
MoreCode;
//For example, the first value from A is selected
d3.csv(A[0], function(error, data) {
MoreCode;
})
问题是,这似乎不是d3.csv的有效输入,因为它不起作用。我不知道我是错过了什么,还是不能这样做
我搜索了一下,可能是因为d3.csv是一个异步方法,但我不确定这是否是问题所在
您的第一个
CSV
数据正在异步加载,因此此函数不会返回任何内容,任何建议都将受到重视
functionThatReturnsArray(){
d3.csv("http//URL.COM", function(){
SomeMoreCode;
return ArrayOfStrings
};)
}
您可以将以下代码放入函数中
function processArray(A){
MoreCode;
//For example, the first value from A is selected
d3.csv(A[0], function(error, data) {
MoreCode;
})
}
并在第一个csv
加载回调中调用此函数
functionThatReturnsArray(){
d3.csv("http//URL.COM", function(){
SomeMoreCode;
processArray(ArrayOfStrings) //add this
};)
}
您的第一个
CSV
数据正在异步加载,因此此函数不会返回任何内容
functionThatReturnsArray(){
d3.csv("http//URL.COM", function(){
SomeMoreCode;
return ArrayOfStrings
};)
}
您可以将以下代码放入函数中
function processArray(A){
MoreCode;
//For example, the first value from A is selected
d3.csv(A[0], function(error, data) {
MoreCode;
})
}
并在第一个csv
加载回调中调用此函数
functionThatReturnsArray(){
d3.csv("http//URL.COM", function(){
SomeMoreCode;
processArray(ArrayOfStrings) //add this
};)
}