I've made a gauge like instrument that will get used to prompt someone to maintain rhythmic breathing patterns during heart/brain coherence training.
Manipulate[ListLinePlot[(Table[#, {10}] & /@ Range[10]) a,
PlotRange -> {{0, 11}, {0, 10}},
AspectRatio -> 3.5,
ImageSize -> 100,
PlotStyle -> LightGray,
Axes -> {False, True},
Filling -> Axis,
FillingStyle -> LightGreen,
Frame -> True,
FrameTicks -> {{True, True}, {None, None}}
], {a, 0, 1},
Paneled -> False,
ControlType -> None,
AutorunSequencing -> 3
]
Note that after executing the code you'll need to click on the + in the upper right corner of the output to get to Autorun, which will get you the following:

This nicely runs up and down, but now I'd like the ability to set four things programatically.
- A default speed at which the gauge will run up (e.g., 5 seconds);
- A default speed at which the gauge will run down (e.g., 4 seconds);
- A timed delay at the bottom (e.g., 2 seconds, which I currently kind of
hack with
AutorunSequencing -> 3); and - A timed delay at the top.
I had originally tried doing this with Animate[], but it seemed to have too many limitations.
Maybe the same holds for Manipulate[] and I have to go to basics with Dynamic[].
I thought it worth asking. Any suggestions welcomed.



