Brush Handles
This example shows a D3.js scatterplot with 800 random data points, where a brush component selects points along the x-axis. Visible, draggable resize handles replace the default invisible brush boundary, with oversized arc-shaped paths making the interaction area obvious. The code uses `d3.svg.brush`, `d3.svg.arc`, and `d3.svg.axis` with an SVG rendering. Circle opacity changes during selection, and selected points receive a red stroke, while the brush extent itself remains semi-transparent. The data is generated via `d3.range(800).map(Math.random)`.
AI-generated descriptionThis example demonstrates how to add visible and draggable handles to D3’s d3.svg.brush component, rather than that relying on the invisible boundary of the brush extent. The handle sizes here are exaggerated for demonstration purposes!