D3
OG
Old school D3 from simpler times
All examples
By author
By category
About
Andrew-Reid
Full window
Github gist
~20 000 Simultaneous SVG Transitions
See also the
canvas version
.
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>SVG Lots of Transitions</title> <script src='https://d3js.org/d3.v4.min.js' type='text/javascript'></script> </head> <body> <svg style="width: 960px; height: 500px"></svg> <script> var width = 960; var height = 500; var data = d3.range(19200) var svg = d3.select("svg"); var rects = svg.selectAll("rect") .data(data) .enter() .append("rect") .attr("width",4) .attr("height",4) .attr("x", function(d) { return d % (960/5) * 5; }) .attr("y", function(d) { return Math.floor (d/(960/5)) * 5; }) .attr("fill", "steelblue") rects.transition() .duration(3000) .delay(function(d) { return d % (960/5) + Math.floor(d/(960/5) ) }) .attr("x", function(d) { return 960 - d % (960/5) * 5; }) .attr("y", function(d) { return 500 - Math.floor (d/(960/5)) * 5; }) .attr("fill","lightgreen"); </script> </body> </html>
https://d3js.org/d3.v4.min.js