{"version":"1.0","type":"rich","title":"Circles with D3 Cleaned Up","description":"A grid of hand-coded pastel circles on a white SVG canvas, positioned at fixed coordinates with specified radii and fills. The example serves as a minimal demonstration of D3's selection and join API: `select()` targets the SVG element, while the `selection.selectAll(...).join(...)` chain in `viz.js` binds the imported data array to `circle` nodes, using `.attr()` to map each datum’s `cx`, `cy`, `r`, and `fill` properties. The data originates from `data.js` as an exported array of objects.","provider_name":"VizHub AI Studio","provider_url":"https://vizhub.com","html":"<iframe src=\"https://vizhub.com/viz/18267c38518b4143b5152cf198a5cece?mode=embed\" width=\"960\" height=\"500\" scrolling=\"no\" frameborder=\"0\"></iframe>","width":960,"height":500,"cache_age":3600}