{"version":"1.0","type":"rich","title":"D3 selection exploration, Data DOM, enter update exit","description":"Animated circles sweep in sine patterns across the screen, with their radii and vertical positions oscillating over time. The visualization demonstrates D3's enter/update/exit lifecycle: a `selectAll('circle')` query is joined with a data array via `.join('circle')`, which handles node creation, attribute updates, and removal as the dataset changes each frame. The code uses `d3.select` and `d3.range` to build an SVG scene, updating positions and sizes at 60 frames per second via `setInterval`. The data is procedurally generated with trigonometric functions, and the rendering is pure SVG with no external data source.","provider_name":"VizHub AI Studio","provider_url":"https://vizhub.com","html":"<iframe src=\"https://vizhub.com/viz/bd2f9f1684584833bcc0a79d503aa0bd?mode=embed\" width=\"960\" height=\"500\" scrolling=\"no\" frameborder=\"0\"></iframe>","width":960,"height":500,"cache_age":3600}