Skip to main content

State Transitions

The State Transitions panel visualizes changes in discrete values from your topic message paths. Use message path syntax to specify which values to track.

The panel displays data for specified topics across the entire visualization time range.

Current playback time will be indicated by a vertical gray bar.

state transitions panel

Paths can point to any primitive value (numbers, booleans, enums, etc.), but will be most useful for enums.

note

Constants included in your ROS message definition will be displayed as a label for each "enum" plot. Limit enums to one per message definition, as Foxglove will not know which constant name to use in the event of multiple matches.

Settings

General

fielddescription
Sync with other plotsSync zooming and panning with other plots
Show pointsShow a point for each incoming message

X-axis

fielddescription
Axis labelLabel displayed along the time axis
Time window
  • Automatic Last 30 seconds for live data, or the full time range for recorded data
  • Sliding Specify a sliding time window that follows the current playback time
  • Fixed Set fixed min and max values
Window sizeFor Sliding time window: range of time in seconds
Playhead positionFor Sliding time window: either at the center or the right edge
MinFor Fixed time window: min value in seconds
MaxFor Fixed time window: max value in seconds

Series

fielddescription
Message pathMessage path containing values for the series
LabelLabel displayed in the legend for the series
Timestamp

Timestamp used for message ordering:

  • Log time is the standard timestamp used for playback message ordering across the app
  • A custom field can be any field within the message data containing sec and nsec integers
  • Header stamp is a header.stamp ROS 1 or ROS 2 field containing sec and nsec integers (and special case of 'custom field', above)
  • Publish time is an optional MCAP-specific field

Controls and shortcuts

Pan and zoom

To pan, click and drag using the mouse or trackpad.

To zoom, scroll using the mouse wheel or trackpad. Alternatively, enable the Zoom tool by clicking the button in the toolbar or pressing z on your keyboard:

zoom tool

With the Zoom tool on, click and drag to select an area:

zoom highlight

Click the Reset view button in the panel toolbar (or double-click the panel) to reset to the original viewport, as defined by your panel's range settings:

reset view

Scroll vertically

Sometimes not all series fit in the viewport. To scroll vertically, you can:

  • Press Shift while scrolling anywhere in the panel
  • Scroll over the scrollbar
  • Drag the scrollbar

Click-to-seek

Hover over any point on the state transition chart to see state details at the time in a tooltip. You'll see a vertical yellow bar appear, as well as a corresponding yellow marker at the same time on the playback timeline. Click to seek playback to the yellow marker on the timeline.

note

Only available for recorded data.