Min/max over a grid's pixels, skipping noData/NaN — to seed a default continuous scale when the
caller attaches none. Exported so a caller building its own default ColorScale (e.g.
RasterLayer._draw's precedence chain) matches colorizeGrid's own fallback ranging exactly.
Min/max over a grid's pixels, skipping noData/NaN — to seed a default continuous scale when the caller attaches none. Exported so a caller building its own default ColorScale (e.g. RasterLayer._draw's precedence chain) matches colorizeGrid's own fallback ranging exactly.