Fork of Bowl of Fruit - General Update Pattern Special Cases
This example demonstrates the General Update Pattern in D3, showing how to handle add, remove, and modify operations on SVG fruit shapes. The code uses D3 v5's `selection.enter`, `selection.merge`, and `selection.exit` to update circles and text elements. The iteractive sequence buys apples, then eats one, replaces one with a lemon, and removes another, with each change re-rendering the bowl using the `fruitBowl` function that imports `scaleOrdinal` for color and radius mapping.