Plot arbitrary values from topics using message path syntax.
Using message path syntax, specify the path to the y-axis data you want to plot. Alternatively, enter a number to add a horizontal line at that value.
If you enter a message path that points to multiple values (e.g.
/some_topic/some_array[:].x), the plot will display a scatter plot of points at each x-axis tick.
There are 3 possible values for the x-axis: incoming messages' timestamp, y-axis values' indices, or data at a user-specified message path.
By default, the panel plots y-values against incoming messages' timestamp. It is possible to specify whether the timestamp is taken from message's receive time or its header stamp. All Plot panels with timestamp x-axes in a given layout will be kept in sync for easy comparison.
In this mode, adding message path
/some_topic.some_array as a new line in the plot will chart that array's values against their respective indices. For example, if
/some_topic.some_array contained the values
[5, 10, 15], the resulting points on the chart would be
[1, 10], and
This plots just the data from the latest tick, and should always point to an array of values.
Using message path syntax, specify the path to the x-axis data you want to plot, e.g. /some_topic.position.x. You can choose to plot data from just the most recent tick (
"msg path (current)") or from all matching messages throughout playback (
"msg path (accumulated)").
Scroll to zoom, and drag to pan. By default, scrolling will zoom horizontally only. To zoom vertically, hold
v while scrolling. To zoom horizontally and vertically at the same time, hold
b while scrolling.
"reset view" button or double-click the panel to reset to the original viewport.
To take the derivative of a value (change per second), use the special
.@derivative modifier. This does not work with scatter plots (when using slices).
To switch the sign of a value, use the
.@negative modifier at the end of a message path. The following math functions are also available:
Y max- Fixed maximum value for y-axis.
Y min- Fixed minimum value for y-axis.
X range in seconds (for timestamp plots only)- The plot's "viewport" (i.e. width in seconds) as it follows playback.
Scroll– Zoom horizontally
Scroll– Zoom vertically
Scroll– Zoom both horizontally and vertically