Jump to content

Recommended Posts

  • Seeq Team


Chain View enables a nice visual of all the time periods stacked side-by-side; however, sometimes it is useful to create a new signal from all these capsules that has been scrunched together.  This avoids the maximum limit of how many capsules can be shown in Chain View.  Note this is different from "time warping" which realigns the samples by some amount.  Signal scrunching keeps the relative sample alignment the same within each capsule - but it does move each "snippet" of the signal next to each other.

20190909_Signal scrunching overview.png


Here is a screenshot of all the signals and conditions needed for this analysis.

20190909_Signal scrunching steps.png

  1. Add signal to the display with the specified time range.
  2. Create the time periods, condition capsules, of interest.
  3. Using the Custom Condition tool, create a new capsule that surrounds all the capsules containing the data for the new signal.  Note, the signal will start at the beginning of this capsule.
  4. Create Inverse of the time periods of interest that occurs within the 'Condition for New Signal'.  This will be used to calculate the time lag between the capsules in the 'Condition for Time Periods of Interest'.
    • $cftp.inverse().removeLongerThan(1wk).intersect($cfns)


  5. Create the signal snippets that occur only within the 'Condition for Time Periods of Interest' and the 'Condition for New Signal'.
    • $t.within($cftp.intersect($cfns))


  6. Create a new signal to calculate the delay between each of the 'Condition for Time Periods of Interest' capsules.
    • 1.toSignal().aggregate(totalized(), $icfc, startKey()).convertUnits('h').toStep()


  7. Create a running sum of the delay - this will be used to shift all the snippets to the beginning of the 'Condition for New Signal' capsule.
    • $dbtp.runningSum($cfns)


  8. Scrunch the signal.
    • $ts.delay(0-$rsod, 1wk)


  • Like 2
Link to comment
Share on other sites

  • 1 year later...
  • Super Seeqer

A follow-up on this post. As of Seeq version R48 there is no longer a limit on the number of capsules which can be displayed in chain view. So if you were interested in signal scrunching as a work around that is no longer needed. 


With a couple of our new functions this calculation is a lot simpler

This requires a Manual Condition with a single capsule so that we know the starting point where we will calculate delays from.

$delay = timesince($ManualCondition,1min,$Running)





Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Create New...