Actual Target Poor OK Good
Each bullet is drawn by renderItem from a rich datum ({ y, target, ranges }). Because the target and top band sit above the measured value, the type declares yExtent so the y-axis fits the full mark, not just y. Without it the 100 band and the higher targets would render above the plot.