{"version":"1.0","type":"rich","title":"Bowl of Fruit - General Update Pattern","description":"This example demonstrates the general update pattern for data joins in D3, animating a bowl of fruit as apples are eaten or replaced by lemons. Rectangles form the bowl, while circles and labels inside groups render each fruit. The code uses `d3.scaleOrdinal` for color and radius, and separates enter, update, and exit selections via `selection.enter()`, `.merge()`, and `.exit().remove()`. Timed `setTimeout` calls trigger render functions that modify the data array, showcasing how the SVG updates reactively.","provider_name":"VizHub AI Studio","provider_url":"https://vizhub.com","html":"<iframe src=\"https://vizhub.com/viz/35684d0127b34b69a1632695365fdda6?mode=embed\" width=\"960\" height=\"500\" scrolling=\"no\" frameborder=\"0\"></iframe>","width":960,"height":500,"cache_age":3600}