Bowl Fruit - General Update Pattern
This example demonstrates the general update pattern for data joins in D3, showing how circles representing fruit transition when data changes over time. The visualization uses `selection.data()`, `enter()`, `merge()`, and `exit()` to handle adding, updating, and removing elements, with `transition()` animating position and radius changes. D3 v5 and SVG circles render apples and lemons with distinct colors and sizes, while automatic timed updates remove, replace, and filter fruits to illustrate enter, update, and exit behavior.