Javascript библиотека D3 вызов функции
Я не в состоянии понять, как d3.вызов () работает и когда и где это использовать. здесь это учебник ссылка, которую я пытаюсь завершить.
может кто-нибудь, пожалуйста, объяснить конкретно, что эта часть делает
var xAxis = d3.svg.axis()
.scale(xScale)
.orient("bottom");
svg.append("g").call(xAxis);
1 ответ:
Я думаю, что трюк здесь заключается в том, чтобы понять, что xAxis-это функция, которая генерирует кучу элементов SVG. На самом деле это функция, возвращаемая
d3.svg.axis(). Функции масштабирования и ориентации являются лишь частью синтаксиса цепочки (подробнее об этом здесь:http://alignedleft.com/tutorials/d3/chaining-methods/).так
svg.append("g")добавляет элемент группы SVG к svg и возвращает ссылку на себя в виде выборки (тот же синтаксис цепочки работает здесь). Когда вы используетеcallпри выборе вы вызываете функцию с именемxAxisна элементах выделенияg. В этом случае вы запускаете функцию axis,xAxis, на вновь созданной и присоединенной группе,g.если это все равно не имеет смысла, синтаксис выше составляет:
xAxis(svg.append("g"));или:
d3.svg.axis() .scale(xScale) .orient("bottom")(svg.append("g"));