> ## Documentation Index
> Fetch the complete documentation index at: https://avala.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Plot Panel

> Time-series charts for IMU, velocity, and other numeric sensor data

The Plot panel renders numeric sensor data as time-series line charts. It is used to visualize continuous signals such as accelerometer readings, angular velocities, speed, temperature, and any other topic that produces numeric values over time.

## Supported Data

The Plot panel works with any topic that contains numeric fields. Common sources include:

| Schema                  | Data                                               | Typical Topics                       |
| ----------------------- | -------------------------------------------------- | ------------------------------------ |
| `sensor_msgs/Imu`       | Linear acceleration, angular velocity, orientation | `/imu/data`, `/imu/raw`              |
| `geometry_msgs/Twist`   | Linear and angular velocity                        | `/cmd_vel`, `/vehicle/twist`         |
| `geometry_msgs/Vector3` | Three-axis numeric data                            | `/acceleration`, `/magnetic_field`   |
| Float/Int messages      | Single numeric values                              | `/vehicle/speed`, `/battery/voltage` |

### Auto-Detection

A topic is assigned to the Plot panel when:

* Its schema name contains `imu`, `twist`, `vector3`, `float`, or `int` (matching schemas like `sensor_msgs/Imu`, `geometry_msgs/Twist`, `geometry_msgs/Vector3`), **or**
* Its topic name contains `imu`, `cmd_vel`, `battery`, `temperature`, or `sensor`

## Features

### Multi-Axis Charts

Topics with multiple numeric fields (such as IMU data with X, Y, and Z axes) are plotted as separate lines on the same chart. Each axis is color-coded for easy identification.

For IMU data, the plot typically shows:

| Signal              | Fields             | Description                     |
| ------------------- | ------------------ | ------------------------------- |
| Linear acceleration | `x`, `y`, `z`      | Accelerometer readings in m/s^2 |
| Angular velocity    | `x`, `y`, `z`      | Gyroscope readings in rad/s     |
| Orientation         | `x`, `y`, `z`, `w` | Quaternion components           |

### Timeline Synchronization

The Plot panel is synchronized with all other panels through the shared timeline:

* A **cursor line** on the chart marks the current playback position
* **Seeking** on the timeline moves the cursor across the chart
* **Playing** the recording scrolls the chart to follow the current time
* **Frame stepping** moves the cursor to the next/previous data point

When you click on a specific point in the chart, the entire viewer (including camera images, point clouds, and other panels) seeks to that timestamp.

### Zoom and Pan

| Action          | Control                                  |
| --------------- | ---------------------------------------- |
| Zoom time axis  | Scroll horizontally or use pinch gesture |
| Zoom value axis | Scroll vertically with modifier key      |
| Pan             | Click and drag                           |
| Reset zoom      | Double-click                             |

Zooming in on the time axis reveals finer detail in the signal. Zooming in on the value axis adjusts the vertical scale to focus on a specific range.

### Cursor Tracking

As you move the cursor over the chart, a tooltip displays the exact value and timestamp at the cursor position. This enables precise readout of sensor values at any point in the recording.

## Common Use Cases

<CardGroup cols={2}>
  <Card title="" icon="gauge">
    <p style={{fontWeight: 600, fontSize: '18px', marginBottom: '4px', marginTop: '8px', color: 'inherit'}}>IMU analysis</p>
    <p style={{fontSize: '14px', marginTop: '0px', opacity: 0.6}}>Inspect accelerometer and gyroscope data to identify sudden movements, vibrations, or sensor anomalies.</p>
  </Card>

  <Card title="" icon="gauge-high">
    <p style={{fontWeight: 600, fontSize: '18px', marginBottom: '4px', marginTop: '8px', color: 'inherit'}}>Velocity profiling</p>
    <p style={{fontSize: '14px', marginTop: '0px', opacity: 0.6}}>Plot vehicle or robot speed over time to verify motion profiles and detect unexpected stops or accelerations.</p>
  </Card>

  <Card title="" icon="chart-line">
    <p style={{fontWeight: 600, fontSize: '18px', marginBottom: '4px', marginTop: '8px', color: 'inherit'}}>Sensor correlation</p>
    <p style={{fontSize: '14px', marginTop: '0px', opacity: 0.6}}>View numeric signals alongside camera and point cloud panels to correlate events across sensor modalities.</p>
  </Card>

  <Card title="" icon="magnifying-glass-chart">
    <p style={{fontWeight: 600, fontSize: '18px', marginBottom: '4px', marginTop: '8px', color: 'inherit'}}>Data quality checks</p>
    <p style={{fontSize: '14px', marginTop: '0px', opacity: 0.6}}>Spot dropout, noise spikes, and timing irregularities in sensor streams.</p>
  </Card>
</CardGroup>

<Tip>
  Click on any point in the Plot panel to seek the entire viewer to that timestamp. This makes it easy to jump from an IMU spike to the corresponding camera frame and point cloud.
</Tip>

## Related

* [Multi-Sensor Viewer](/docs/visualization/multi-sensor-viewer) -- Overview of the synchronized multi-panel layout
* [Log Panel](/docs/visualization/panels/log-panel) -- Text log output correlated with the same timeline
* [Map Panel](/docs/visualization/panels/map-panel) -- Geographic visualization correlated with sensor data
