Я хочу настроить дерево квадрантов d3, используя данные, которые не имеют столбцов с метками x и y, но с некоторыми другими метками. Читая документы quadtree, я подумал, что смогу сделать это так:
var data = [{"a":6,"b":99.0},{"a":12,"b":227.0},{"a":2,"b":43.0},{"a":23,"b":32.0}];
var xname = "a";
var yname = "b";
var quadtree = d3.geom.quadtree(data)
.x(function(d) {return d[xname]; })
.y(function(d) {return d[yname]; });
Но когда я запускаю этот код, я получаю сообщение об ошибке:
TypeError: d3.geom.quadtree(data).x is not a function. (In 'd3.geom.quadtree(data).x(function(d) {return d[xname]; })', 'd3.geom.quadtree(data).x' is undefined)
Как настроить дерево квадрантов для использования разных меток x и y? (Конечно, я мог бы изменить данные, чтобы использовать «x» и «y», но есть причины, по которым я не хочу этого делать.)