I think you could try a Gantt Chart visualization of your data.
Here is a thread vaguely similar to yours that used the Gantt chart.
I'm not sure if this will suit your setup, but maybe it can give ideas.
The bar length can be calculated by comparing the time until the next state:
IF LAST()=0 THEN 0 // if last date, no bar
ELSE DATEDIFF('second',ATTR([timeForGantt]),LOOKUP(ATTR([timeForGantt]),1))/(60*60*24) // otherwise just time til next point
There are very specific Table Calculation settings needed for the bar length
and the total time on/off (please see screenshot below).
Please see workbook v18.1 attached in the Forum Thread.
284040gantt.twbx 224.0 KB