- SystemML Class
- Displays numeric data as traces on a scope
- Under development - interface likely to change
- This component is currently not working properly on Linux or OSX (GTK) and therefore is only included in Windows releases of BRAHMS.
- This component is under development - this means that its interface may change in future (and its class name definitely will). You should be aware that you will have to make changes to any scripts where you use it to run against a future BRAHMS release.
Performs a similar job to the Matlab function
plot(). That is, it graphs numeric input data as coloured traces plotted against time. The traces roll in real-time, so the overall appearance is similar to that of an oscilloscope. Data can be supplied in any numeric format, and the scope "channels" can be set to probe any element of any of the inputs.
- N inputs, the source data.
This Process stores its State in DataML.
- decimate (
- Number of samples between updates (default is 1).
- history (
- Number of decimated samples to display at once on the scope (i.e. set the time base, default is 100).
- updatePeriod (
- An alternative way to specify the number of samples between updates (by specifying the time between updates, in seconds).
- displayedTime (
- An alternative way to specify the number of samples to display at once (by specifying the width of the plot in seconds).
- lineWidth (
- Line width in pixels (range is 1 to 25, fractions are permitted, default if unsupplied is 3).
- displayMode (
- Number between 0 and 4; higher numbers display higher quality images but are slower to render (default is 4, maximum quality).
- refreshRate (
- Refresh rate in Hz (default is 60). You can set this to the refresh rate of your screen, but it shouldn't make much odds since we don't currently sync to v-sync. We should synchronise with v-sync automatically, and then we could remove this parameter, but at the moment we don't.
channels can be a vector (for the number of channels). Each member can have the following fields.
- input (STRING)
- Name of input to probe.
- index (
- Subscripts into the specified input to probe; unsupplied dimensions default to 1. This is one-based, so the value
1 will probe the first entry.
- gain (
- Gain for this channel.
- offset (
- Offset for this channel.
The image window has time along the x-axis, and shows the most recent Q seconds, where Q is history * decimate * T (the input sample period). If you specified
displayedTime, this is the amount of time shown.
The image window has arbitrary units along the y-axis, and they are specified from -1 to +1. Thus, an input that has values in that range will display entirely inside the window. Before each probed input channel is displayed, the gain is applied, and then the offset. Thus, you can use gain and offset to display multiple channels alongside without cluttering.
- Each channel displays a scalar input - this is why you have to probe into an input using index. To display all elements of an input, you would currently have to add a channel for each one.
This Component uses the wxWidgets cross-platform compatibility layer.