How the figure's rows, plots and traces are arranged, how to drop a signal onto a plot, and how the layout editor adds and removes rows and splits a row into plots side by side. Martino Ferrari Rows, layout and drag & drop

The figure is a stack of rows holding 1 to 8 plots in all, and a row can be split into up to 4 plots side by side. Each plot holds up to 4 traces. Every plot shares one time axis and the figure has one pair of side margins, so the y labels line up, the data areas start and end on the same two columns, and the windows cannot drift apart. The left margin holds the y labels; the right one is empty, and is there so the newest tick's label and the newest sample's ink have somewhere to land instead of sitting on the frame.

How to reach it

Drag a signal's badge from the badge bar onto a row to add a trace.

Press l, or pick Layout editor from the overflow menu, to add and remove rows: a × appears at the top left of each plot and a + on each boundary between rows, including above the first and below the last.

The editor's own button in the top-right corner leaves it.

Splitting a row

In the layout editor, click the + at a row's left or right edge, or the + between two plots, to add a plot to that row. The new plot starts empty.

Drag the arrow on the boundary between two plots to resize them. Neither plot can be made narrower than about 96 px, and the widths are saved with the session.

Click the × of a plot in a split row to remove that plot and its traces. In a row with a single plot the × removes the row instead.

All the plots of a row, and of the whole figure, share one time window: zooming or panning along time in any of them moves all of them, and the vertical cursors are drawn in every plot. The y axes, the horizontal cursors and the fits belong to each plot. Only the bottom row carries the time labels. A row holds at most 4 plots and the figure at most 8 in total; the + buttons go grey at the limit.

Worth knowing

A plot's own right-click menu (the same compact rows as the app's menu) holds the y-axis scale, the two fits, and Remove signal, which swaps the menu to that plot's traces plus All traces on this plot — with a Back row to return. That is how a trace comes off a row without going through the layout editor.

A drop adds a trace to the row's next free slot; it does not replace one. With four traces already on a plot the drop is refused.

Inserting a row moves the rows below it with their contents, split rows included. Inserting above row 1 puts what row 1 plotted onto row 2 and leaves the new row empty — the rows are not renumbered under you. A split row's plots are named 2a, 2b and so on.

A trace is remembered by the signal's name, not by its channel number, because a new CONFIG or an enable renumbers the channels and an index would silently re-point the trace.

Adding or removing a row rebuilds the figure, which is cheap, but it also re-deals every trace. A frozen trigger event survives the rebuild: the pinned window is restated rather than re-framed on the live edge.

Example

With three traces on row 1, pressing l shows 7 buttons: the ×, the two + above and below the row with their two resize arrows, and the two + at the row's left and right edges. Clicking the + above row 1 gives 2 rows and 12 buttons, with the three traces now on row 2 — the layout probe reports exactly this as rows=2 buttons=12 traces=[0:-|1:sine,ramp,noise].