{"version":"1.0","type":"rich","title":"compact D3 Selection Exploration","description":"This example demonstrates the enter-update-exit cycle in D3 data joins. An animated sine wave drives a set of circles across the screen, where the number of circles changes dynamically based on the oscillation, and each circle’s position and radius fluctuate over time. The visualization combines `d3.select`, `selection.data`, and `selection.join` from D3 v7 to bind data to SVG elements, with a `setInterval` loop updating the visualization at 60 frames per second. The data is generated procedurally using `d3.range` in the `makeData` function.","provider_name":"VizHub AI Studio","provider_url":"https://vizhub.com","html":"<iframe src=\"https://vizhub.com/viz/e331ad11dde9472fb65eb5c081b14f4a?mode=embed\" width=\"960\" height=\"500\" scrolling=\"no\" frameborder=\"0\"></iframe>","width":960,"height":500,"cache_age":3600}