最佳答案
我正在阅读 D3.js 文档,发现很难从文档中理解 selection.data
法。
下面是文档中给出的示例代码:
var matrix = [
[11975, 5871, 8916, 2868],
[ 1951, 10048, 2060, 6171],
[ 8010, 16145, 8090, 8045],
[ 1013, 990, 940, 6907]
];
var tr = d3.select("body").append("table").selectAll("tr")
.data(matrix)
.enter().append("tr");
var td = tr.selectAll("td")
.data(function(d) { return d; })
.enter().append("td")
.text(function(d) { return d; });
我理解大部分内容,但是 var td
语句的 .data(function(d) { return d; })
部分是怎么回事?
我最好的猜测如下:
var tr
语句将一个四元素数组绑定到每个 tr 节点var td
语句以某种方式使用这个四元素数组作为其数据但是 .data(function(d) { return d; })
实际上是如何获得这些数据的,它返回什么呢?