Javascript jQuery并行d3对象
关于对这一问题的答复: 我们可以做类似的事情,让d3物体在体内吗 问题的例子Javascript jQuery并行d3对象,javascript,jquery,ajax,d3.js,Javascript,Jquery,Ajax,D3.js,关于对这一问题的答复: 我们可以做类似的事情,让d3物体在体内吗 问题的例子 var done = 4; // number of total requests var sum = 0; /* Normal loops don't create a new scope */ $([1,2,3,4,5]).each(function() { var number = this; $.getJSON("/values/" + number, function(data) { su
var done = 4; // number of total requests
var sum = 0;
/* Normal loops don't create a new scope */
$([1,2,3,4,5]).each(function() {
var number = this;
$.getJSON("/values/" + number, function(data) {
sum += data.value;
done -= 1;
if(done == 0) $("#mynode").html(sum);
});
});
正如评论中提到的,
d3.json
的工作原理与$.getJSON
大致相同,因此可以采用相同的方法。然而,与D3相同的作者有一个库,它为您形式化了过程,并使结果更易于处理
以下是来自以下方面的示例:
我还应该提到,d3并不关心数据是如何到达的,因此,如果您已经计划在页面中与d3一起使用jQuery,那么通过d3自己的方法获取数据并没有任何实际好处。d3内置d3.json之类的东西的主要好处是,如果您不需要它,您可以避免加载类似jQuery的东西。您应该能够简单地将
$.getJSON
替换为d3.json
,如果这是您想要的。谢谢,我将阅读并更新此内容!
queue()
.defer(d3.json, "us-states.json")
.defer(d3.tsv, "us-state-populations.tsv")
.await(ready);
function ready(error, states, statePopulations) {
// display map here
}