{"version":"1.0","type":"rich","title":"Practice Bowl of Fruit - General update pattern","description":"This example demonstrates the general update pattern in D3, showing how data joins handle entering, updating, and exiting elements. A row of apples transitions through three timed changes: one fruit is removed, one apple becomes a lemon, and another fruit is deleted. The code uses `d3.select`, `selection.data`, `selection.enter`, `selection.exit`, and `selection.merge` to manage SVG groups, circles, and text elements. Scales from `d3.scaleOrdinal` assign colors and radii based on fruit type. Rendering is SVG-based, with the `renderFruitBowl` function called repeatedly with new fruit arrays.","provider_name":"VizHub AI Studio","provider_url":"https://vizhub.com","html":"<iframe src=\"https://vizhub.com/viz/bc74d2f8e7474e5da6fa167c7eb78833?mode=embed\" width=\"960\" height=\"500\" scrolling=\"no\" frameborder=\"0\"></iframe>","width":960,"height":500,"cache_age":3600}