{"version":"1.0","type":"rich","title":"D3 Selection Explanation","description":"This example demonstrates how D3 selections and the data join pattern work by animating a set of circles and a connected line. The code uses `d3.select`, `d3.range`, and the `selection.join` method to bind an array of points to SVG circles, while a `d3.line` path is redrawn each frame. The data is generated procedurally from a sine wave, and the animation updates every 100 milliseconds using `setInterval`. The visualization shows a shifting waveform with a fixed set of circular markers, emphasizing how D3’s enter, update, and exit logic operates in a live rendering loop.","provider_name":"VizHub AI Studio","provider_url":"https://vizhub.com","html":"<iframe src=\"https://vizhub.com/viz/a43f950ded6441ae9e5162e6a40ad810?mode=embed\" width=\"960\" height=\"500\" scrolling=\"no\" frameborder=\"0\"></iframe>","width":960,"height":500,"cache_age":3600}