{"version":"1.0","type":"rich","title":"Bowl of Fruit - General Update Pattern","description":"This example demonstrates the general update pattern in D3, showing how data joins manage enter, update, and exit selections. Circles represent fruit types—apples and lemons—with color and radius mapped via `d3.scaleOrdinal`, while `xPosition` spaces them horizontally. Using `d3.selectAll`, `data`, and `merge`, the code transitions new and existing SVG circles with `transition().duration()`, and exit selections shrink and remove themselves. The animation sequence, driven by timed `setTimeout` calls, removes, replaces, and filters fruit objects, highlighting dynamic data updates.","provider_name":"VizHub AI Studio","provider_url":"https://vizhub.com","html":"<iframe src=\"https://vizhub.com/viz/b253cb8c065e4c7484940c3a78d1ecba?mode=embed\" width=\"960\" height=\"500\" scrolling=\"no\" frameborder=\"0\"></iframe>","width":960,"height":500,"cache_age":3600}