Я хочу, чтобы иметь возможность изменять радиус каждого узла в моем графике, который я создаю, используя d3.js. Тем не менее, я хочу изменить радиус каждого узла, по одному за раз, и я хочу иметь возможность контролировать задержку между каждым изменением вместе с последовательностью узлов.Связанные анимации/переходы по каждому узлу графа - D3.js
Пока это то, что я имею в терминах кода:
var nodes = svg.selectAll(".node");
nodes.each(function() {
d3.select(this).
transition().
delay(100).
attr("r", "5")
});
Вы можете повторить это просто используя код по этой ссылке: http://bl.ocks.org/mbostock/4062045. Код, который я вставил выше, является просто дополнением к коду на вышеупомянутой ссылке.
Когда я запускаю это, все nodes
в моем графическом переходе одновременно, т. Е. Растут в размере (радиусе) одновременно. Тем не менее, я хочу, чтобы они переходили, т. Е. Растут по размеру (радиус) по одному за раз. Я повторяю, что я хочу, чтобы иметь возможность контролировать:
delay
между переходом каждогоnode
и- порядок
nodes
, которые проходят переходы.
Любые указатели, учебные пособия или даже другие ответы на stackoverflow были бы замечательными. В идеале я бы хотел привести примеры кода.
Ближайший я пришел к онлайн-ссылкам в этом подразделе учебника по переходам d3.js: http://bost.ocks.org/mike/transition/#per-element. Однако в нем отсутствует конкретный пример кода. Я, будучи новичком в d3.js и javascript в целом, не могу забрать его без конкретных примеров кода.
+1 для справки о массивах в D3.js ... я не знал об этом. просто получил его на работу. огромное спасибо! – vijay
@vijay ум обмена рабочей скрипкой. –