Here one possible way to zoom in, using Function
method .loadToFloatArray
with ScaledUserViewContainer
from the wslib quark:
(
{
var phase = (Phasor.ar(0, 100 * SampleDur.ir) - SampleDur.ir).wrap(0, 1);
var trig = HPZ1.ar(phase) < 0;
[phase, trig];
}.loadToFloatArray(0.03, action: { arg array;
var d, u;
{
d = array.as(Array).clump(2).flop; // split into 2 arrays
// d[0].size.debug("d[0].size");
u = ScaledUserViewContainer(nil, Rect(10, 35, 490, 400));
u.maxZoom = 30; // set higher if you want more zoom range
u.unscaledDrawFunc = {arg view;
d.do({arg item, i;
var col = [Color.red, Color.green][i];
Pen.color = col;
Pen.moveTo(0 @ item[0] );
item.do({arg val, ind;
var x = ind / item.size;
var y = (1 - val) ;
Pen.lineTo(view.translateScale(Point(x,y)));
});
Pen.stroke;
});
};
}.defer // defer gui process
});
)