Понимание того, как D3.js связывает данные с узлами
Я читаю документацию 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; });
Я понимаю большую часть этого, но что происходит с.data(function(d) { return d; })
разделvar td
заявление?
Мое лучшее предположение следующее:
var tr
оператор связал массив из четырех элементов с каждым узлом trvar td
Затем оператор использует этот четырехэлементный массив в качестве своих данных, так или иначеНо как.data(function(d) { return d; })
на самом деле получить эти данные, и что это возвращает?