Package symbol

plotjuggler package from plotjuggler repo

plotjuggler

ROS Distro
humble

Package Summary

Version 3.17.2
License MPL-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/facontidavide/PlotJuggler.git
VCS Type git
VCS Version main
Last Updated 2026-05-11
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

PlotJuggler: juggle with data

Additional Links

Maintainers

  • Davide Faconti

Authors

  • Davide Faconti

ALERT: do NOT visit plotjuggler.com

That is probably a Malware / Phishing page impersonating us.

We are taking urgent actions to brint it down.

PlotJuggler

windows ubuntu macos ros2-humble ros2-jazzy ros2-rolling Tweet

Gold Sponsor:

Greenzie Intermodalics Greenzie

PlotJuggler 3.17

PlotJuggler is a tool to visualize time series that is fast, powerful and intuitive.

Noteworthy features:

  • Simple Drag & Drop user interface.
  • Load data from file.
  • Connect to live streaming of data.
  • Save the visualization layout and configurations to reuse them later.
  • Fast OpenGL visualization.
  • Can handle thousands of timeseries and millions of data points.
  • Transform your data using a simple editor: derivative, moving average, integral, etc…
  • PlotJuggler can be easily extended using plugins.

PlotJuggler

Data sources (file and streaming)

  • Load CSV files.
  • Load ULog (PX4).
  • Subscribe to many different streaming sources: MQTT, WebSockets, ZeroMQ, UDP, etc.
  • Understand data formats such as JSON, CBOR, BSON, Message Pack, etc.
  • Well integrated with ROS: open rosbags and/or subscribe to ROS topics (both ROS1 and ROS2).
  • Supports the Lab Streaming Layer, that is used by many devices.
  • Easily add your custom data source and/or formats…

Transform and analyze your data

PlotJuggler makes it easy to visualize data but also to analyze it. You can manipulate your time series using a simple and extendable Transform Editor.

Alternatively, you may use the Custom Function Editor, which allows you to create Multi-input / Single-output functions using a scripting language based on Lua.

If you are not familiar with Lua, don’t be afraid, you won’t need more than 5 minutes to learn it ;)

Tutorials

To learn how to use PlotJuggler, check the tutorials here:

Tutorial 1 Tutorial 2 Tutorial 3

Supported plugins

Some plugins can be found in a different repository. The individual README files should include all the information needed to compile and use the plugin.

Please submit specific issues, Pull Requests and questions on the related Github repository:

If you want a simple example to learn how to write your own plugins, have a look at PlotJuggler/plotjuggler-sample-plugins

Installation

You can download the latest ready to use binaries from the Release page.

| 🐧 Linux | 🍎 macOS | 🪟 Windows | 📦 Debian | |:--------:|:--------:|:----------:|:---------:| | **AppImage** | **Installer** | **Installer** | **Packages** | | x86 / arm64 | x86 / arm64 | x64 | bookworm, trixie |

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package plotjuggler

3.17.2 (2026-05-11)

  • Rework Foxglove and PlotJuggler websocket bridge plugins to accept arbitrary websocket URLs (#1361)
  • Fix crash when saving empty/zero-byte layout XML files (#1362)
  • Add alert for plotjuggler.com phishing site

3.17.1 (2026-05-04)

  • Fix Windows installer: flatten embeddable Python next to plotjuggler.exe
  • Bundle MSVC C++ runtime DLLs in Windows installer
  • Make AppImage / Windows / Debian artifacts portable across hosts
  • Be resilient to issues with Python initialization
  • CI fixes: sanitize branch ref_name for filenames, grant contents:write for release uploads

3.17.0 (2026-04-27)

  • New plugin: ToolboxMosaico for Mosaico Flight datasets, with streaming pullTopics and per-topic download progress UI (#1340)
  • New plugin: Serial Port DataStreamer with nested-JSON support and robust port parsing (#1314)
  • New parser: OMG IDL support for ROS 2 message definitions (#1345)
  • New ToolboxCSV: rewritten CSV/Parquet export with single-file and multi-file modes, topic filter, time-gap segmentation and NaN/Null/Inf detection (replaces the legacy CSV export)
  • Function Editor: Python custom functions, library dialog, and UX refactor (red highlight on empty name, vertical splitter)
  • UDP DataStreamer: header-byte dispatch for multi-type payloads, with topic→descriptor mapping in the protobuf parser (#1144)
  • Add common statistics SISO transforms: RMS, MAV, stddev, peak-to-peak (#1325)
  • Fix CSV loading issues (#1338, addresses #850, #987, #1000)
  • Fix curve restoration when loading layout XML files (#1339)
  • dataload_ulog: support files larger than 2 GB (#1346)
  • parser_ros: emit Header fields per the schema, drop double-prefix (#1350)
  • rosx_introspection: parse bounded sequence syntax [<=N] (#1349)
  • MCAP: more resilient reading of corrupted files
  • AppImage: HiDPI scaling and theme isolation on GNOME (#1344)
  • Update Qt Advanced Docking to 4.5 and fix a Wayland issue
  • Fix tree view collisions when a curve path is also a parent node, and stale X-axis ordering / Parquet column list
  • Fix #749: wrap multi-file prefix dialog content in QScrollArea
  • Fix #464: -d flag data is no longer overwritten when a layout is also passed with -l
  • Fix #1052: segfault when a dock area is destroyed during mouse events
  • Fix #1080: vertical zoom no longer stuck at max 0.1
  • Fix #1291: use UTC when formatting epoch-based time axis labels
  • Fix #1014: deterministic attribute order in layout XML
  • Fix #1151: always save colormaps in layout XML
  • Fix #994: save/restore streaming buffer size in layout XML
  • Fix #1326: standalone time-like CSV columns kept as strings
  • Fix #1062: bump nlohmann_json to v3.13.0 for clang >= 19 compatibility
  • Fix #1324: keep internal series names aligned after prefix remap
  • Fix #967, #528: --buffer_size actually sets the value and the time slider updates on offset toggle
  • omgidl: enable /Zc:__cplusplus for MSVC to satisfy peglib's C++17 check
  • CI/build hardening: ros2-rolling typesupport, Conan/Homebrew

File truncated at 100 lines see the full file

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged plotjuggler at Robotics Stack Exchange

Package symbol

plotjuggler package from plotjuggler repo

plotjuggler

ROS Distro
jazzy

Package Summary

Version 3.17.2
License MPL-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/facontidavide/PlotJuggler.git
VCS Type git
VCS Version main
Last Updated 2026-05-11
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

PlotJuggler: juggle with data

Additional Links

Maintainers

  • Davide Faconti

Authors

  • Davide Faconti

ALERT: do NOT visit plotjuggler.com

That is probably a Malware / Phishing page impersonating us.

We are taking urgent actions to brint it down.

PlotJuggler

windows ubuntu macos ros2-humble ros2-jazzy ros2-rolling Tweet

Gold Sponsor:

Greenzie Intermodalics Greenzie

PlotJuggler 3.17

PlotJuggler is a tool to visualize time series that is fast, powerful and intuitive.

Noteworthy features:

  • Simple Drag & Drop user interface.
  • Load data from file.
  • Connect to live streaming of data.
  • Save the visualization layout and configurations to reuse them later.
  • Fast OpenGL visualization.
  • Can handle thousands of timeseries and millions of data points.
  • Transform your data using a simple editor: derivative, moving average, integral, etc…
  • PlotJuggler can be easily extended using plugins.

PlotJuggler

Data sources (file and streaming)

  • Load CSV files.
  • Load ULog (PX4).
  • Subscribe to many different streaming sources: MQTT, WebSockets, ZeroMQ, UDP, etc.
  • Understand data formats such as JSON, CBOR, BSON, Message Pack, etc.
  • Well integrated with ROS: open rosbags and/or subscribe to ROS topics (both ROS1 and ROS2).
  • Supports the Lab Streaming Layer, that is used by many devices.
  • Easily add your custom data source and/or formats…

Transform and analyze your data

PlotJuggler makes it easy to visualize data but also to analyze it. You can manipulate your time series using a simple and extendable Transform Editor.

Alternatively, you may use the Custom Function Editor, which allows you to create Multi-input / Single-output functions using a scripting language based on Lua.

If you are not familiar with Lua, don’t be afraid, you won’t need more than 5 minutes to learn it ;)

Tutorials

To learn how to use PlotJuggler, check the tutorials here:

Tutorial 1 Tutorial 2 Tutorial 3

Supported plugins

Some plugins can be found in a different repository. The individual README files should include all the information needed to compile and use the plugin.

Please submit specific issues, Pull Requests and questions on the related Github repository:

If you want a simple example to learn how to write your own plugins, have a look at PlotJuggler/plotjuggler-sample-plugins

Installation

You can download the latest ready to use binaries from the Release page.

| 🐧 Linux | 🍎 macOS | 🪟 Windows | 📦 Debian | |:--------:|:--------:|:----------:|:---------:| | **AppImage** | **Installer** | **Installer** | **Packages** | | x86 / arm64 | x86 / arm64 | x64 | bookworm, trixie |

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package plotjuggler

3.17.2 (2026-05-11)

  • Rework Foxglove and PlotJuggler websocket bridge plugins to accept arbitrary websocket URLs (#1361)
  • Fix crash when saving empty/zero-byte layout XML files (#1362)
  • Add alert for plotjuggler.com phishing site

3.17.1 (2026-05-04)

  • Fix Windows installer: flatten embeddable Python next to plotjuggler.exe
  • Bundle MSVC C++ runtime DLLs in Windows installer
  • Make AppImage / Windows / Debian artifacts portable across hosts
  • Be resilient to issues with Python initialization
  • CI fixes: sanitize branch ref_name for filenames, grant contents:write for release uploads

3.17.0 (2026-04-27)

  • New plugin: ToolboxMosaico for Mosaico Flight datasets, with streaming pullTopics and per-topic download progress UI (#1340)
  • New plugin: Serial Port DataStreamer with nested-JSON support and robust port parsing (#1314)
  • New parser: OMG IDL support for ROS 2 message definitions (#1345)
  • New ToolboxCSV: rewritten CSV/Parquet export with single-file and multi-file modes, topic filter, time-gap segmentation and NaN/Null/Inf detection (replaces the legacy CSV export)
  • Function Editor: Python custom functions, library dialog, and UX refactor (red highlight on empty name, vertical splitter)
  • UDP DataStreamer: header-byte dispatch for multi-type payloads, with topic→descriptor mapping in the protobuf parser (#1144)
  • Add common statistics SISO transforms: RMS, MAV, stddev, peak-to-peak (#1325)
  • Fix CSV loading issues (#1338, addresses #850, #987, #1000)
  • Fix curve restoration when loading layout XML files (#1339)
  • dataload_ulog: support files larger than 2 GB (#1346)
  • parser_ros: emit Header fields per the schema, drop double-prefix (#1350)
  • rosx_introspection: parse bounded sequence syntax [<=N] (#1349)
  • MCAP: more resilient reading of corrupted files
  • AppImage: HiDPI scaling and theme isolation on GNOME (#1344)
  • Update Qt Advanced Docking to 4.5 and fix a Wayland issue
  • Fix tree view collisions when a curve path is also a parent node, and stale X-axis ordering / Parquet column list
  • Fix #749: wrap multi-file prefix dialog content in QScrollArea
  • Fix #464: -d flag data is no longer overwritten when a layout is also passed with -l
  • Fix #1052: segfault when a dock area is destroyed during mouse events
  • Fix #1080: vertical zoom no longer stuck at max 0.1
  • Fix #1291: use UTC when formatting epoch-based time axis labels
  • Fix #1014: deterministic attribute order in layout XML
  • Fix #1151: always save colormaps in layout XML
  • Fix #994: save/restore streaming buffer size in layout XML
  • Fix #1326: standalone time-like CSV columns kept as strings
  • Fix #1062: bump nlohmann_json to v3.13.0 for clang >= 19 compatibility
  • Fix #1324: keep internal series names aligned after prefix remap
  • Fix #967, #528: --buffer_size actually sets the value and the time slider updates on offset toggle
  • omgidl: enable /Zc:__cplusplus for MSVC to satisfy peglib's C++17 check
  • CI/build hardening: ros2-rolling typesupport, Conan/Homebrew

File truncated at 100 lines see the full file

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged plotjuggler at Robotics Stack Exchange

Package symbol

plotjuggler package from plotjuggler repo

plotjuggler

ROS Distro
kilted

Package Summary

Version 3.17.2
License MPL-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/facontidavide/PlotJuggler.git
VCS Type git
VCS Version main
Last Updated 2026-05-11
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

PlotJuggler: juggle with data

Additional Links

Maintainers

  • Davide Faconti

Authors

  • Davide Faconti

ALERT: do NOT visit plotjuggler.com

That is probably a Malware / Phishing page impersonating us.

We are taking urgent actions to brint it down.

PlotJuggler

windows ubuntu macos ros2-humble ros2-jazzy ros2-rolling Tweet

Gold Sponsor:

Greenzie Intermodalics Greenzie

PlotJuggler 3.17

PlotJuggler is a tool to visualize time series that is fast, powerful and intuitive.

Noteworthy features:

  • Simple Drag & Drop user interface.
  • Load data from file.
  • Connect to live streaming of data.
  • Save the visualization layout and configurations to reuse them later.
  • Fast OpenGL visualization.
  • Can handle thousands of timeseries and millions of data points.
  • Transform your data using a simple editor: derivative, moving average, integral, etc…
  • PlotJuggler can be easily extended using plugins.

PlotJuggler

Data sources (file and streaming)

  • Load CSV files.
  • Load ULog (PX4).
  • Subscribe to many different streaming sources: MQTT, WebSockets, ZeroMQ, UDP, etc.
  • Understand data formats such as JSON, CBOR, BSON, Message Pack, etc.
  • Well integrated with ROS: open rosbags and/or subscribe to ROS topics (both ROS1 and ROS2).
  • Supports the Lab Streaming Layer, that is used by many devices.
  • Easily add your custom data source and/or formats…

Transform and analyze your data

PlotJuggler makes it easy to visualize data but also to analyze it. You can manipulate your time series using a simple and extendable Transform Editor.

Alternatively, you may use the Custom Function Editor, which allows you to create Multi-input / Single-output functions using a scripting language based on Lua.

If you are not familiar with Lua, don’t be afraid, you won’t need more than 5 minutes to learn it ;)

Tutorials

To learn how to use PlotJuggler, check the tutorials here:

Tutorial 1 Tutorial 2 Tutorial 3

Supported plugins

Some plugins can be found in a different repository. The individual README files should include all the information needed to compile and use the plugin.

Please submit specific issues, Pull Requests and questions on the related Github repository:

If you want a simple example to learn how to write your own plugins, have a look at PlotJuggler/plotjuggler-sample-plugins

Installation

You can download the latest ready to use binaries from the Release page.

| 🐧 Linux | 🍎 macOS | 🪟 Windows | 📦 Debian | |:--------:|:--------:|:----------:|:---------:| | **AppImage** | **Installer** | **Installer** | **Packages** | | x86 / arm64 | x86 / arm64 | x64 | bookworm, trixie |

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package plotjuggler

3.17.2 (2026-05-11)

  • Rework Foxglove and PlotJuggler websocket bridge plugins to accept arbitrary websocket URLs (#1361)
  • Fix crash when saving empty/zero-byte layout XML files (#1362)
  • Add alert for plotjuggler.com phishing site

3.17.1 (2026-05-04)

  • Fix Windows installer: flatten embeddable Python next to plotjuggler.exe
  • Bundle MSVC C++ runtime DLLs in Windows installer
  • Make AppImage / Windows / Debian artifacts portable across hosts
  • Be resilient to issues with Python initialization
  • CI fixes: sanitize branch ref_name for filenames, grant contents:write for release uploads

3.17.0 (2026-04-27)

  • New plugin: ToolboxMosaico for Mosaico Flight datasets, with streaming pullTopics and per-topic download progress UI (#1340)
  • New plugin: Serial Port DataStreamer with nested-JSON support and robust port parsing (#1314)
  • New parser: OMG IDL support for ROS 2 message definitions (#1345)
  • New ToolboxCSV: rewritten CSV/Parquet export with single-file and multi-file modes, topic filter, time-gap segmentation and NaN/Null/Inf detection (replaces the legacy CSV export)
  • Function Editor: Python custom functions, library dialog, and UX refactor (red highlight on empty name, vertical splitter)
  • UDP DataStreamer: header-byte dispatch for multi-type payloads, with topic→descriptor mapping in the protobuf parser (#1144)
  • Add common statistics SISO transforms: RMS, MAV, stddev, peak-to-peak (#1325)
  • Fix CSV loading issues (#1338, addresses #850, #987, #1000)
  • Fix curve restoration when loading layout XML files (#1339)
  • dataload_ulog: support files larger than 2 GB (#1346)
  • parser_ros: emit Header fields per the schema, drop double-prefix (#1350)
  • rosx_introspection: parse bounded sequence syntax [<=N] (#1349)
  • MCAP: more resilient reading of corrupted files
  • AppImage: HiDPI scaling and theme isolation on GNOME (#1344)
  • Update Qt Advanced Docking to 4.5 and fix a Wayland issue
  • Fix tree view collisions when a curve path is also a parent node, and stale X-axis ordering / Parquet column list
  • Fix #749: wrap multi-file prefix dialog content in QScrollArea
  • Fix #464: -d flag data is no longer overwritten when a layout is also passed with -l
  • Fix #1052: segfault when a dock area is destroyed during mouse events
  • Fix #1080: vertical zoom no longer stuck at max 0.1
  • Fix #1291: use UTC when formatting epoch-based time axis labels
  • Fix #1014: deterministic attribute order in layout XML
  • Fix #1151: always save colormaps in layout XML
  • Fix #994: save/restore streaming buffer size in layout XML
  • Fix #1326: standalone time-like CSV columns kept as strings
  • Fix #1062: bump nlohmann_json to v3.13.0 for clang >= 19 compatibility
  • Fix #1324: keep internal series names aligned after prefix remap
  • Fix #967, #528: --buffer_size actually sets the value and the time slider updates on offset toggle
  • omgidl: enable /Zc:__cplusplus for MSVC to satisfy peglib's C++17 check
  • CI/build hardening: ros2-rolling typesupport, Conan/Homebrew

File truncated at 100 lines see the full file

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged plotjuggler at Robotics Stack Exchange

Package symbol

plotjuggler package from plotjuggler repo

plotjuggler

ROS Distro
lyrical

Package Summary

Version 3.17.2
License MPL-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/facontidavide/PlotJuggler.git
VCS Type git
VCS Version main
Last Updated 2026-05-11
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

PlotJuggler: juggle with data

Additional Links

Maintainers

  • Davide Faconti

Authors

  • Davide Faconti

ALERT: do NOT visit plotjuggler.com

That is probably a Malware / Phishing page impersonating us.

We are taking urgent actions to brint it down.

PlotJuggler

windows ubuntu macos ros2-humble ros2-jazzy ros2-rolling Tweet

Gold Sponsor:

Greenzie Intermodalics Greenzie

PlotJuggler 3.17

PlotJuggler is a tool to visualize time series that is fast, powerful and intuitive.

Noteworthy features:

  • Simple Drag & Drop user interface.
  • Load data from file.
  • Connect to live streaming of data.
  • Save the visualization layout and configurations to reuse them later.
  • Fast OpenGL visualization.
  • Can handle thousands of timeseries and millions of data points.
  • Transform your data using a simple editor: derivative, moving average, integral, etc…
  • PlotJuggler can be easily extended using plugins.

PlotJuggler

Data sources (file and streaming)

  • Load CSV files.
  • Load ULog (PX4).
  • Subscribe to many different streaming sources: MQTT, WebSockets, ZeroMQ, UDP, etc.
  • Understand data formats such as JSON, CBOR, BSON, Message Pack, etc.
  • Well integrated with ROS: open rosbags and/or subscribe to ROS topics (both ROS1 and ROS2).
  • Supports the Lab Streaming Layer, that is used by many devices.
  • Easily add your custom data source and/or formats…

Transform and analyze your data

PlotJuggler makes it easy to visualize data but also to analyze it. You can manipulate your time series using a simple and extendable Transform Editor.

Alternatively, you may use the Custom Function Editor, which allows you to create Multi-input / Single-output functions using a scripting language based on Lua.

If you are not familiar with Lua, don’t be afraid, you won’t need more than 5 minutes to learn it ;)

Tutorials

To learn how to use PlotJuggler, check the tutorials here:

Tutorial 1 Tutorial 2 Tutorial 3

Supported plugins

Some plugins can be found in a different repository. The individual README files should include all the information needed to compile and use the plugin.

Please submit specific issues, Pull Requests and questions on the related Github repository:

If you want a simple example to learn how to write your own plugins, have a look at PlotJuggler/plotjuggler-sample-plugins

Installation

You can download the latest ready to use binaries from the Release page.

| 🐧 Linux | 🍎 macOS | 🪟 Windows | 📦 Debian | |:--------:|:--------:|:----------:|:---------:| | **AppImage** | **Installer** | **Installer** | **Packages** | | x86 / arm64 | x86 / arm64 | x64 | bookworm, trixie |

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package plotjuggler

3.17.2 (2026-05-11)

  • Rework Foxglove and PlotJuggler websocket bridge plugins to accept arbitrary websocket URLs (#1361)
  • Fix crash when saving empty/zero-byte layout XML files (#1362)
  • Add alert for plotjuggler.com phishing site

3.17.1 (2026-05-04)

  • Fix Windows installer: flatten embeddable Python next to plotjuggler.exe
  • Bundle MSVC C++ runtime DLLs in Windows installer
  • Make AppImage / Windows / Debian artifacts portable across hosts
  • Be resilient to issues with Python initialization
  • CI fixes: sanitize branch ref_name for filenames, grant contents:write for release uploads

3.17.0 (2026-04-27)

  • New plugin: ToolboxMosaico for Mosaico Flight datasets, with streaming pullTopics and per-topic download progress UI (#1340)
  • New plugin: Serial Port DataStreamer with nested-JSON support and robust port parsing (#1314)
  • New parser: OMG IDL support for ROS 2 message definitions (#1345)
  • New ToolboxCSV: rewritten CSV/Parquet export with single-file and multi-file modes, topic filter, time-gap segmentation and NaN/Null/Inf detection (replaces the legacy CSV export)
  • Function Editor: Python custom functions, library dialog, and UX refactor (red highlight on empty name, vertical splitter)
  • UDP DataStreamer: header-byte dispatch for multi-type payloads, with topic→descriptor mapping in the protobuf parser (#1144)
  • Add common statistics SISO transforms: RMS, MAV, stddev, peak-to-peak (#1325)
  • Fix CSV loading issues (#1338, addresses #850, #987, #1000)
  • Fix curve restoration when loading layout XML files (#1339)
  • dataload_ulog: support files larger than 2 GB (#1346)
  • parser_ros: emit Header fields per the schema, drop double-prefix (#1350)
  • rosx_introspection: parse bounded sequence syntax [<=N] (#1349)
  • MCAP: more resilient reading of corrupted files
  • AppImage: HiDPI scaling and theme isolation on GNOME (#1344)
  • Update Qt Advanced Docking to 4.5 and fix a Wayland issue
  • Fix tree view collisions when a curve path is also a parent node, and stale X-axis ordering / Parquet column list
  • Fix #749: wrap multi-file prefix dialog content in QScrollArea
  • Fix #464: -d flag data is no longer overwritten when a layout is also passed with -l
  • Fix #1052: segfault when a dock area is destroyed during mouse events
  • Fix #1080: vertical zoom no longer stuck at max 0.1
  • Fix #1291: use UTC when formatting epoch-based time axis labels
  • Fix #1014: deterministic attribute order in layout XML
  • Fix #1151: always save colormaps in layout XML
  • Fix #994: save/restore streaming buffer size in layout XML
  • Fix #1326: standalone time-like CSV columns kept as strings
  • Fix #1062: bump nlohmann_json to v3.13.0 for clang >= 19 compatibility
  • Fix #1324: keep internal series names aligned after prefix remap
  • Fix #967, #528: --buffer_size actually sets the value and the time slider updates on offset toggle
  • omgidl: enable /Zc:__cplusplus for MSVC to satisfy peglib's C++17 check
  • CI/build hardening: ros2-rolling typesupport, Conan/Homebrew

File truncated at 100 lines see the full file

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged plotjuggler at Robotics Stack Exchange

Package symbol

plotjuggler package from plotjuggler repo

plotjuggler

ROS Distro
rolling

Package Summary

Version 3.17.2
License MPL-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/facontidavide/PlotJuggler.git
VCS Type git
VCS Version main
Last Updated 2026-05-11
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

PlotJuggler: juggle with data

Additional Links

Maintainers

  • Davide Faconti

Authors

  • Davide Faconti

ALERT: do NOT visit plotjuggler.com

That is probably a Malware / Phishing page impersonating us.

We are taking urgent actions to brint it down.

PlotJuggler

windows ubuntu macos ros2-humble ros2-jazzy ros2-rolling Tweet

Gold Sponsor:

Greenzie Intermodalics Greenzie

PlotJuggler 3.17

PlotJuggler is a tool to visualize time series that is fast, powerful and intuitive.

Noteworthy features:

  • Simple Drag & Drop user interface.
  • Load data from file.
  • Connect to live streaming of data.
  • Save the visualization layout and configurations to reuse them later.
  • Fast OpenGL visualization.
  • Can handle thousands of timeseries and millions of data points.
  • Transform your data using a simple editor: derivative, moving average, integral, etc…
  • PlotJuggler can be easily extended using plugins.

PlotJuggler

Data sources (file and streaming)

  • Load CSV files.
  • Load ULog (PX4).
  • Subscribe to many different streaming sources: MQTT, WebSockets, ZeroMQ, UDP, etc.
  • Understand data formats such as JSON, CBOR, BSON, Message Pack, etc.
  • Well integrated with ROS: open rosbags and/or subscribe to ROS topics (both ROS1 and ROS2).
  • Supports the Lab Streaming Layer, that is used by many devices.
  • Easily add your custom data source and/or formats…

Transform and analyze your data

PlotJuggler makes it easy to visualize data but also to analyze it. You can manipulate your time series using a simple and extendable Transform Editor.

Alternatively, you may use the Custom Function Editor, which allows you to create Multi-input / Single-output functions using a scripting language based on Lua.

If you are not familiar with Lua, don’t be afraid, you won’t need more than 5 minutes to learn it ;)

Tutorials

To learn how to use PlotJuggler, check the tutorials here:

Tutorial 1 Tutorial 2 Tutorial 3

Supported plugins

Some plugins can be found in a different repository. The individual README files should include all the information needed to compile and use the plugin.

Please submit specific issues, Pull Requests and questions on the related Github repository:

If you want a simple example to learn how to write your own plugins, have a look at PlotJuggler/plotjuggler-sample-plugins

Installation

You can download the latest ready to use binaries from the Release page.

| 🐧 Linux | 🍎 macOS | 🪟 Windows | 📦 Debian | |:--------:|:--------:|:----------:|:---------:| | **AppImage** | **Installer** | **Installer** | **Packages** | | x86 / arm64 | x86 / arm64 | x64 | bookworm, trixie |

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package plotjuggler

3.17.2 (2026-05-11)

  • Rework Foxglove and PlotJuggler websocket bridge plugins to accept arbitrary websocket URLs (#1361)
  • Fix crash when saving empty/zero-byte layout XML files (#1362)
  • Add alert for plotjuggler.com phishing site

3.17.1 (2026-05-04)

  • Fix Windows installer: flatten embeddable Python next to plotjuggler.exe
  • Bundle MSVC C++ runtime DLLs in Windows installer
  • Make AppImage / Windows / Debian artifacts portable across hosts
  • Be resilient to issues with Python initialization
  • CI fixes: sanitize branch ref_name for filenames, grant contents:write for release uploads

3.17.0 (2026-04-27)

  • New plugin: ToolboxMosaico for Mosaico Flight datasets, with streaming pullTopics and per-topic download progress UI (#1340)
  • New plugin: Serial Port DataStreamer with nested-JSON support and robust port parsing (#1314)
  • New parser: OMG IDL support for ROS 2 message definitions (#1345)
  • New ToolboxCSV: rewritten CSV/Parquet export with single-file and multi-file modes, topic filter, time-gap segmentation and NaN/Null/Inf detection (replaces the legacy CSV export)
  • Function Editor: Python custom functions, library dialog, and UX refactor (red highlight on empty name, vertical splitter)
  • UDP DataStreamer: header-byte dispatch for multi-type payloads, with topic→descriptor mapping in the protobuf parser (#1144)
  • Add common statistics SISO transforms: RMS, MAV, stddev, peak-to-peak (#1325)
  • Fix CSV loading issues (#1338, addresses #850, #987, #1000)
  • Fix curve restoration when loading layout XML files (#1339)
  • dataload_ulog: support files larger than 2 GB (#1346)
  • parser_ros: emit Header fields per the schema, drop double-prefix (#1350)
  • rosx_introspection: parse bounded sequence syntax [<=N] (#1349)
  • MCAP: more resilient reading of corrupted files
  • AppImage: HiDPI scaling and theme isolation on GNOME (#1344)
  • Update Qt Advanced Docking to 4.5 and fix a Wayland issue
  • Fix tree view collisions when a curve path is also a parent node, and stale X-axis ordering / Parquet column list
  • Fix #749: wrap multi-file prefix dialog content in QScrollArea
  • Fix #464: -d flag data is no longer overwritten when a layout is also passed with -l
  • Fix #1052: segfault when a dock area is destroyed during mouse events
  • Fix #1080: vertical zoom no longer stuck at max 0.1
  • Fix #1291: use UTC when formatting epoch-based time axis labels
  • Fix #1014: deterministic attribute order in layout XML
  • Fix #1151: always save colormaps in layout XML
  • Fix #994: save/restore streaming buffer size in layout XML
  • Fix #1326: standalone time-like CSV columns kept as strings
  • Fix #1062: bump nlohmann_json to v3.13.0 for clang >= 19 compatibility
  • Fix #1324: keep internal series names aligned after prefix remap
  • Fix #967, #528: --buffer_size actually sets the value and the time slider updates on offset toggle
  • omgidl: enable /Zc:__cplusplus for MSVC to satisfy peglib's C++17 check
  • CI/build hardening: ros2-rolling typesupport, Conan/Homebrew

File truncated at 100 lines see the full file

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged plotjuggler at Robotics Stack Exchange

No version for distro ardent showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

plotjuggler package from plotjuggler repo

plotjuggler

ROS Distro
humble

Package Summary

Version 3.17.2
License MPL-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/facontidavide/PlotJuggler.git
VCS Type git
VCS Version main
Last Updated 2026-05-11
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

PlotJuggler: juggle with data

Additional Links

Maintainers

  • Davide Faconti

Authors

  • Davide Faconti

ALERT: do NOT visit plotjuggler.com

That is probably a Malware / Phishing page impersonating us.

We are taking urgent actions to brint it down.

PlotJuggler

windows ubuntu macos ros2-humble ros2-jazzy ros2-rolling Tweet

Gold Sponsor:

Greenzie Intermodalics Greenzie

PlotJuggler 3.17

PlotJuggler is a tool to visualize time series that is fast, powerful and intuitive.

Noteworthy features:

  • Simple Drag & Drop user interface.
  • Load data from file.
  • Connect to live streaming of data.
  • Save the visualization layout and configurations to reuse them later.
  • Fast OpenGL visualization.
  • Can handle thousands of timeseries and millions of data points.
  • Transform your data using a simple editor: derivative, moving average, integral, etc…
  • PlotJuggler can be easily extended using plugins.

PlotJuggler

Data sources (file and streaming)

  • Load CSV files.
  • Load ULog (PX4).
  • Subscribe to many different streaming sources: MQTT, WebSockets, ZeroMQ, UDP, etc.
  • Understand data formats such as JSON, CBOR, BSON, Message Pack, etc.
  • Well integrated with ROS: open rosbags and/or subscribe to ROS topics (both ROS1 and ROS2).
  • Supports the Lab Streaming Layer, that is used by many devices.
  • Easily add your custom data source and/or formats…

Transform and analyze your data

PlotJuggler makes it easy to visualize data but also to analyze it. You can manipulate your time series using a simple and extendable Transform Editor.

Alternatively, you may use the Custom Function Editor, which allows you to create Multi-input / Single-output functions using a scripting language based on Lua.

If you are not familiar with Lua, don’t be afraid, you won’t need more than 5 minutes to learn it ;)

Tutorials

To learn how to use PlotJuggler, check the tutorials here:

Tutorial 1 Tutorial 2 Tutorial 3

Supported plugins

Some plugins can be found in a different repository. The individual README files should include all the information needed to compile and use the plugin.

Please submit specific issues, Pull Requests and questions on the related Github repository:

If you want a simple example to learn how to write your own plugins, have a look at PlotJuggler/plotjuggler-sample-plugins

Installation

You can download the latest ready to use binaries from the Release page.

| 🐧 Linux | 🍎 macOS | 🪟 Windows | 📦 Debian | |:--------:|:--------:|:----------:|:---------:| | **AppImage** | **Installer** | **Installer** | **Packages** | | x86 / arm64 | x86 / arm64 | x64 | bookworm, trixie |

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package plotjuggler

3.17.2 (2026-05-11)

  • Rework Foxglove and PlotJuggler websocket bridge plugins to accept arbitrary websocket URLs (#1361)
  • Fix crash when saving empty/zero-byte layout XML files (#1362)
  • Add alert for plotjuggler.com phishing site

3.17.1 (2026-05-04)

  • Fix Windows installer: flatten embeddable Python next to plotjuggler.exe
  • Bundle MSVC C++ runtime DLLs in Windows installer
  • Make AppImage / Windows / Debian artifacts portable across hosts
  • Be resilient to issues with Python initialization
  • CI fixes: sanitize branch ref_name for filenames, grant contents:write for release uploads

3.17.0 (2026-04-27)

  • New plugin: ToolboxMosaico for Mosaico Flight datasets, with streaming pullTopics and per-topic download progress UI (#1340)
  • New plugin: Serial Port DataStreamer with nested-JSON support and robust port parsing (#1314)
  • New parser: OMG IDL support for ROS 2 message definitions (#1345)
  • New ToolboxCSV: rewritten CSV/Parquet export with single-file and multi-file modes, topic filter, time-gap segmentation and NaN/Null/Inf detection (replaces the legacy CSV export)
  • Function Editor: Python custom functions, library dialog, and UX refactor (red highlight on empty name, vertical splitter)
  • UDP DataStreamer: header-byte dispatch for multi-type payloads, with topic→descriptor mapping in the protobuf parser (#1144)
  • Add common statistics SISO transforms: RMS, MAV, stddev, peak-to-peak (#1325)
  • Fix CSV loading issues (#1338, addresses #850, #987, #1000)
  • Fix curve restoration when loading layout XML files (#1339)
  • dataload_ulog: support files larger than 2 GB (#1346)
  • parser_ros: emit Header fields per the schema, drop double-prefix (#1350)
  • rosx_introspection: parse bounded sequence syntax [<=N] (#1349)
  • MCAP: more resilient reading of corrupted files
  • AppImage: HiDPI scaling and theme isolation on GNOME (#1344)
  • Update Qt Advanced Docking to 4.5 and fix a Wayland issue
  • Fix tree view collisions when a curve path is also a parent node, and stale X-axis ordering / Parquet column list
  • Fix #749: wrap multi-file prefix dialog content in QScrollArea
  • Fix #464: -d flag data is no longer overwritten when a layout is also passed with -l
  • Fix #1052: segfault when a dock area is destroyed during mouse events
  • Fix #1080: vertical zoom no longer stuck at max 0.1
  • Fix #1291: use UTC when formatting epoch-based time axis labels
  • Fix #1014: deterministic attribute order in layout XML
  • Fix #1151: always save colormaps in layout XML
  • Fix #994: save/restore streaming buffer size in layout XML
  • Fix #1326: standalone time-like CSV columns kept as strings
  • Fix #1062: bump nlohmann_json to v3.13.0 for clang >= 19 compatibility
  • Fix #1324: keep internal series names aligned after prefix remap
  • Fix #967, #528: --buffer_size actually sets the value and the time slider updates on offset toggle
  • omgidl: enable /Zc:__cplusplus for MSVC to satisfy peglib's C++17 check
  • CI/build hardening: ros2-rolling typesupport, Conan/Homebrew

File truncated at 100 lines see the full file

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged plotjuggler at Robotics Stack Exchange

No version for distro bouncy showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

plotjuggler package from plotjuggler repo

plotjuggler

ROS Distro
humble

Package Summary

Version 3.17.2
License MPL-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/facontidavide/PlotJuggler.git
VCS Type git
VCS Version main
Last Updated 2026-05-11
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

PlotJuggler: juggle with data

Additional Links

Maintainers

  • Davide Faconti

Authors

  • Davide Faconti

ALERT: do NOT visit plotjuggler.com

That is probably a Malware / Phishing page impersonating us.

We are taking urgent actions to brint it down.

PlotJuggler

windows ubuntu macos ros2-humble ros2-jazzy ros2-rolling Tweet

Gold Sponsor:

Greenzie Intermodalics Greenzie

PlotJuggler 3.17

PlotJuggler is a tool to visualize time series that is fast, powerful and intuitive.

Noteworthy features:

  • Simple Drag & Drop user interface.
  • Load data from file.
  • Connect to live streaming of data.
  • Save the visualization layout and configurations to reuse them later.
  • Fast OpenGL visualization.
  • Can handle thousands of timeseries and millions of data points.
  • Transform your data using a simple editor: derivative, moving average, integral, etc…
  • PlotJuggler can be easily extended using plugins.

PlotJuggler

Data sources (file and streaming)

  • Load CSV files.
  • Load ULog (PX4).
  • Subscribe to many different streaming sources: MQTT, WebSockets, ZeroMQ, UDP, etc.
  • Understand data formats such as JSON, CBOR, BSON, Message Pack, etc.
  • Well integrated with ROS: open rosbags and/or subscribe to ROS topics (both ROS1 and ROS2).
  • Supports the Lab Streaming Layer, that is used by many devices.
  • Easily add your custom data source and/or formats…

Transform and analyze your data

PlotJuggler makes it easy to visualize data but also to analyze it. You can manipulate your time series using a simple and extendable Transform Editor.

Alternatively, you may use the Custom Function Editor, which allows you to create Multi-input / Single-output functions using a scripting language based on Lua.

If you are not familiar with Lua, don’t be afraid, you won’t need more than 5 minutes to learn it ;)

Tutorials

To learn how to use PlotJuggler, check the tutorials here:

Tutorial 1 Tutorial 2 Tutorial 3

Supported plugins

Some plugins can be found in a different repository. The individual README files should include all the information needed to compile and use the plugin.

Please submit specific issues, Pull Requests and questions on the related Github repository:

If you want a simple example to learn how to write your own plugins, have a look at PlotJuggler/plotjuggler-sample-plugins

Installation

You can download the latest ready to use binaries from the Release page.

| 🐧 Linux | 🍎 macOS | 🪟 Windows | 📦 Debian | |:--------:|:--------:|:----------:|:---------:| | **AppImage** | **Installer** | **Installer** | **Packages** | | x86 / arm64 | x86 / arm64 | x64 | bookworm, trixie |

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package plotjuggler

3.17.2 (2026-05-11)

  • Rework Foxglove and PlotJuggler websocket bridge plugins to accept arbitrary websocket URLs (#1361)
  • Fix crash when saving empty/zero-byte layout XML files (#1362)
  • Add alert for plotjuggler.com phishing site

3.17.1 (2026-05-04)

  • Fix Windows installer: flatten embeddable Python next to plotjuggler.exe
  • Bundle MSVC C++ runtime DLLs in Windows installer
  • Make AppImage / Windows / Debian artifacts portable across hosts
  • Be resilient to issues with Python initialization
  • CI fixes: sanitize branch ref_name for filenames, grant contents:write for release uploads

3.17.0 (2026-04-27)

  • New plugin: ToolboxMosaico for Mosaico Flight datasets, with streaming pullTopics and per-topic download progress UI (#1340)
  • New plugin: Serial Port DataStreamer with nested-JSON support and robust port parsing (#1314)
  • New parser: OMG IDL support for ROS 2 message definitions (#1345)
  • New ToolboxCSV: rewritten CSV/Parquet export with single-file and multi-file modes, topic filter, time-gap segmentation and NaN/Null/Inf detection (replaces the legacy CSV export)
  • Function Editor: Python custom functions, library dialog, and UX refactor (red highlight on empty name, vertical splitter)
  • UDP DataStreamer: header-byte dispatch for multi-type payloads, with topic→descriptor mapping in the protobuf parser (#1144)
  • Add common statistics SISO transforms: RMS, MAV, stddev, peak-to-peak (#1325)
  • Fix CSV loading issues (#1338, addresses #850, #987, #1000)
  • Fix curve restoration when loading layout XML files (#1339)
  • dataload_ulog: support files larger than 2 GB (#1346)
  • parser_ros: emit Header fields per the schema, drop double-prefix (#1350)
  • rosx_introspection: parse bounded sequence syntax [<=N] (#1349)
  • MCAP: more resilient reading of corrupted files
  • AppImage: HiDPI scaling and theme isolation on GNOME (#1344)
  • Update Qt Advanced Docking to 4.5 and fix a Wayland issue
  • Fix tree view collisions when a curve path is also a parent node, and stale X-axis ordering / Parquet column list
  • Fix #749: wrap multi-file prefix dialog content in QScrollArea
  • Fix #464: -d flag data is no longer overwritten when a layout is also passed with -l
  • Fix #1052: segfault when a dock area is destroyed during mouse events
  • Fix #1080: vertical zoom no longer stuck at max 0.1
  • Fix #1291: use UTC when formatting epoch-based time axis labels
  • Fix #1014: deterministic attribute order in layout XML
  • Fix #1151: always save colormaps in layout XML
  • Fix #994: save/restore streaming buffer size in layout XML
  • Fix #1326: standalone time-like CSV columns kept as strings
  • Fix #1062: bump nlohmann_json to v3.13.0 for clang >= 19 compatibility
  • Fix #1324: keep internal series names aligned after prefix remap
  • Fix #967, #528: --buffer_size actually sets the value and the time slider updates on offset toggle
  • omgidl: enable /Zc:__cplusplus for MSVC to satisfy peglib's C++17 check
  • CI/build hardening: ros2-rolling typesupport, Conan/Homebrew

File truncated at 100 lines see the full file

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged plotjuggler at Robotics Stack Exchange

No version for distro crystal showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

plotjuggler package from plotjuggler repo

plotjuggler

ROS Distro
humble

Package Summary

Version 3.17.2
License MPL-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/facontidavide/PlotJuggler.git
VCS Type git
VCS Version main
Last Updated 2026-05-11
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

PlotJuggler: juggle with data

Additional Links

Maintainers

  • Davide Faconti

Authors

  • Davide Faconti

ALERT: do NOT visit plotjuggler.com

That is probably a Malware / Phishing page impersonating us.

We are taking urgent actions to brint it down.

PlotJuggler

windows ubuntu macos ros2-humble ros2-jazzy ros2-rolling Tweet

Gold Sponsor:

Greenzie Intermodalics Greenzie

PlotJuggler 3.17

PlotJuggler is a tool to visualize time series that is fast, powerful and intuitive.

Noteworthy features:

  • Simple Drag & Drop user interface.
  • Load data from file.
  • Connect to live streaming of data.
  • Save the visualization layout and configurations to reuse them later.
  • Fast OpenGL visualization.
  • Can handle thousands of timeseries and millions of data points.
  • Transform your data using a simple editor: derivative, moving average, integral, etc…
  • PlotJuggler can be easily extended using plugins.

PlotJuggler

Data sources (file and streaming)

  • Load CSV files.
  • Load ULog (PX4).
  • Subscribe to many different streaming sources: MQTT, WebSockets, ZeroMQ, UDP, etc.
  • Understand data formats such as JSON, CBOR, BSON, Message Pack, etc.
  • Well integrated with ROS: open rosbags and/or subscribe to ROS topics (both ROS1 and ROS2).
  • Supports the Lab Streaming Layer, that is used by many devices.
  • Easily add your custom data source and/or formats…

Transform and analyze your data

PlotJuggler makes it easy to visualize data but also to analyze it. You can manipulate your time series using a simple and extendable Transform Editor.

Alternatively, you may use the Custom Function Editor, which allows you to create Multi-input / Single-output functions using a scripting language based on Lua.

If you are not familiar with Lua, don’t be afraid, you won’t need more than 5 minutes to learn it ;)

Tutorials

To learn how to use PlotJuggler, check the tutorials here:

Tutorial 1 Tutorial 2 Tutorial 3

Supported plugins

Some plugins can be found in a different repository. The individual README files should include all the information needed to compile and use the plugin.

Please submit specific issues, Pull Requests and questions on the related Github repository:

If you want a simple example to learn how to write your own plugins, have a look at PlotJuggler/plotjuggler-sample-plugins

Installation

You can download the latest ready to use binaries from the Release page.

| 🐧 Linux | 🍎 macOS | 🪟 Windows | 📦 Debian | |:--------:|:--------:|:----------:|:---------:| | **AppImage** | **Installer** | **Installer** | **Packages** | | x86 / arm64 | x86 / arm64 | x64 | bookworm, trixie |

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package plotjuggler

3.17.2 (2026-05-11)

  • Rework Foxglove and PlotJuggler websocket bridge plugins to accept arbitrary websocket URLs (#1361)
  • Fix crash when saving empty/zero-byte layout XML files (#1362)
  • Add alert for plotjuggler.com phishing site

3.17.1 (2026-05-04)

  • Fix Windows installer: flatten embeddable Python next to plotjuggler.exe
  • Bundle MSVC C++ runtime DLLs in Windows installer
  • Make AppImage / Windows / Debian artifacts portable across hosts
  • Be resilient to issues with Python initialization
  • CI fixes: sanitize branch ref_name for filenames, grant contents:write for release uploads

3.17.0 (2026-04-27)

  • New plugin: ToolboxMosaico for Mosaico Flight datasets, with streaming pullTopics and per-topic download progress UI (#1340)
  • New plugin: Serial Port DataStreamer with nested-JSON support and robust port parsing (#1314)
  • New parser: OMG IDL support for ROS 2 message definitions (#1345)
  • New ToolboxCSV: rewritten CSV/Parquet export with single-file and multi-file modes, topic filter, time-gap segmentation and NaN/Null/Inf detection (replaces the legacy CSV export)
  • Function Editor: Python custom functions, library dialog, and UX refactor (red highlight on empty name, vertical splitter)
  • UDP DataStreamer: header-byte dispatch for multi-type payloads, with topic→descriptor mapping in the protobuf parser (#1144)
  • Add common statistics SISO transforms: RMS, MAV, stddev, peak-to-peak (#1325)
  • Fix CSV loading issues (#1338, addresses #850, #987, #1000)
  • Fix curve restoration when loading layout XML files (#1339)
  • dataload_ulog: support files larger than 2 GB (#1346)
  • parser_ros: emit Header fields per the schema, drop double-prefix (#1350)
  • rosx_introspection: parse bounded sequence syntax [<=N] (#1349)
  • MCAP: more resilient reading of corrupted files
  • AppImage: HiDPI scaling and theme isolation on GNOME (#1344)
  • Update Qt Advanced Docking to 4.5 and fix a Wayland issue
  • Fix tree view collisions when a curve path is also a parent node, and stale X-axis ordering / Parquet column list
  • Fix #749: wrap multi-file prefix dialog content in QScrollArea
  • Fix #464: -d flag data is no longer overwritten when a layout is also passed with -l
  • Fix #1052: segfault when a dock area is destroyed during mouse events
  • Fix #1080: vertical zoom no longer stuck at max 0.1
  • Fix #1291: use UTC when formatting epoch-based time axis labels
  • Fix #1014: deterministic attribute order in layout XML
  • Fix #1151: always save colormaps in layout XML
  • Fix #994: save/restore streaming buffer size in layout XML
  • Fix #1326: standalone time-like CSV columns kept as strings
  • Fix #1062: bump nlohmann_json to v3.13.0 for clang >= 19 compatibility
  • Fix #1324: keep internal series names aligned after prefix remap
  • Fix #967, #528: --buffer_size actually sets the value and the time slider updates on offset toggle
  • omgidl: enable /Zc:__cplusplus for MSVC to satisfy peglib's C++17 check
  • CI/build hardening: ros2-rolling typesupport, Conan/Homebrew

File truncated at 100 lines see the full file

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged plotjuggler at Robotics Stack Exchange

No version for distro eloquent showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

plotjuggler package from plotjuggler repo

plotjuggler

ROS Distro
humble

Package Summary

Version 3.17.2
License MPL-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/facontidavide/PlotJuggler.git
VCS Type git
VCS Version main
Last Updated 2026-05-11
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

PlotJuggler: juggle with data

Additional Links

Maintainers

  • Davide Faconti

Authors

  • Davide Faconti

ALERT: do NOT visit plotjuggler.com

That is probably a Malware / Phishing page impersonating us.

We are taking urgent actions to brint it down.

PlotJuggler

windows ubuntu macos ros2-humble ros2-jazzy ros2-rolling Tweet

Gold Sponsor:

Greenzie Intermodalics Greenzie

PlotJuggler 3.17

PlotJuggler is a tool to visualize time series that is fast, powerful and intuitive.

Noteworthy features:

  • Simple Drag & Drop user interface.
  • Load data from file.
  • Connect to live streaming of data.
  • Save the visualization layout and configurations to reuse them later.
  • Fast OpenGL visualization.
  • Can handle thousands of timeseries and millions of data points.
  • Transform your data using a simple editor: derivative, moving average, integral, etc…
  • PlotJuggler can be easily extended using plugins.

PlotJuggler

Data sources (file and streaming)

  • Load CSV files.
  • Load ULog (PX4).
  • Subscribe to many different streaming sources: MQTT, WebSockets, ZeroMQ, UDP, etc.
  • Understand data formats such as JSON, CBOR, BSON, Message Pack, etc.
  • Well integrated with ROS: open rosbags and/or subscribe to ROS topics (both ROS1 and ROS2).
  • Supports the Lab Streaming Layer, that is used by many devices.
  • Easily add your custom data source and/or formats…

Transform and analyze your data

PlotJuggler makes it easy to visualize data but also to analyze it. You can manipulate your time series using a simple and extendable Transform Editor.

Alternatively, you may use the Custom Function Editor, which allows you to create Multi-input / Single-output functions using a scripting language based on Lua.

If you are not familiar with Lua, don’t be afraid, you won’t need more than 5 minutes to learn it ;)

Tutorials

To learn how to use PlotJuggler, check the tutorials here:

Tutorial 1 Tutorial 2 Tutorial 3

Supported plugins

Some plugins can be found in a different repository. The individual README files should include all the information needed to compile and use the plugin.

Please submit specific issues, Pull Requests and questions on the related Github repository:

If you want a simple example to learn how to write your own plugins, have a look at PlotJuggler/plotjuggler-sample-plugins

Installation

You can download the latest ready to use binaries from the Release page.

| 🐧 Linux | 🍎 macOS | 🪟 Windows | 📦 Debian | |:--------:|:--------:|:----------:|:---------:| | **AppImage** | **Installer** | **Installer** | **Packages** | | x86 / arm64 | x86 / arm64 | x64 | bookworm, trixie |

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package plotjuggler

3.17.2 (2026-05-11)

  • Rework Foxglove and PlotJuggler websocket bridge plugins to accept arbitrary websocket URLs (#1361)
  • Fix crash when saving empty/zero-byte layout XML files (#1362)
  • Add alert for plotjuggler.com phishing site

3.17.1 (2026-05-04)

  • Fix Windows installer: flatten embeddable Python next to plotjuggler.exe
  • Bundle MSVC C++ runtime DLLs in Windows installer
  • Make AppImage / Windows / Debian artifacts portable across hosts
  • Be resilient to issues with Python initialization
  • CI fixes: sanitize branch ref_name for filenames, grant contents:write for release uploads

3.17.0 (2026-04-27)

  • New plugin: ToolboxMosaico for Mosaico Flight datasets, with streaming pullTopics and per-topic download progress UI (#1340)
  • New plugin: Serial Port DataStreamer with nested-JSON support and robust port parsing (#1314)
  • New parser: OMG IDL support for ROS 2 message definitions (#1345)
  • New ToolboxCSV: rewritten CSV/Parquet export with single-file and multi-file modes, topic filter, time-gap segmentation and NaN/Null/Inf detection (replaces the legacy CSV export)
  • Function Editor: Python custom functions, library dialog, and UX refactor (red highlight on empty name, vertical splitter)
  • UDP DataStreamer: header-byte dispatch for multi-type payloads, with topic→descriptor mapping in the protobuf parser (#1144)
  • Add common statistics SISO transforms: RMS, MAV, stddev, peak-to-peak (#1325)
  • Fix CSV loading issues (#1338, addresses #850, #987, #1000)
  • Fix curve restoration when loading layout XML files (#1339)
  • dataload_ulog: support files larger than 2 GB (#1346)
  • parser_ros: emit Header fields per the schema, drop double-prefix (#1350)
  • rosx_introspection: parse bounded sequence syntax [<=N] (#1349)
  • MCAP: more resilient reading of corrupted files
  • AppImage: HiDPI scaling and theme isolation on GNOME (#1344)
  • Update Qt Advanced Docking to 4.5 and fix a Wayland issue
  • Fix tree view collisions when a curve path is also a parent node, and stale X-axis ordering / Parquet column list
  • Fix #749: wrap multi-file prefix dialog content in QScrollArea
  • Fix #464: -d flag data is no longer overwritten when a layout is also passed with -l
  • Fix #1052: segfault when a dock area is destroyed during mouse events
  • Fix #1080: vertical zoom no longer stuck at max 0.1
  • Fix #1291: use UTC when formatting epoch-based time axis labels
  • Fix #1014: deterministic attribute order in layout XML
  • Fix #1151: always save colormaps in layout XML
  • Fix #994: save/restore streaming buffer size in layout XML
  • Fix #1326: standalone time-like CSV columns kept as strings
  • Fix #1062: bump nlohmann_json to v3.13.0 for clang >= 19 compatibility
  • Fix #1324: keep internal series names aligned after prefix remap
  • Fix #967, #528: --buffer_size actually sets the value and the time slider updates on offset toggle
  • omgidl: enable /Zc:__cplusplus for MSVC to satisfy peglib's C++17 check
  • CI/build hardening: ros2-rolling typesupport, Conan/Homebrew

File truncated at 100 lines see the full file

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged plotjuggler at Robotics Stack Exchange

No version for distro dashing showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

plotjuggler package from plotjuggler repo

plotjuggler

ROS Distro
humble

Package Summary

Version 3.17.2
License MPL-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/facontidavide/PlotJuggler.git
VCS Type git
VCS Version main
Last Updated 2026-05-11
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

PlotJuggler: juggle with data

Additional Links

Maintainers

  • Davide Faconti

Authors

  • Davide Faconti

ALERT: do NOT visit plotjuggler.com

That is probably a Malware / Phishing page impersonating us.

We are taking urgent actions to brint it down.

PlotJuggler

windows ubuntu macos ros2-humble ros2-jazzy ros2-rolling Tweet

Gold Sponsor:

Greenzie Intermodalics Greenzie

PlotJuggler 3.17

PlotJuggler is a tool to visualize time series that is fast, powerful and intuitive.

Noteworthy features:

  • Simple Drag & Drop user interface.
  • Load data from file.
  • Connect to live streaming of data.
  • Save the visualization layout and configurations to reuse them later.
  • Fast OpenGL visualization.
  • Can handle thousands of timeseries and millions of data points.
  • Transform your data using a simple editor: derivative, moving average, integral, etc…
  • PlotJuggler can be easily extended using plugins.

PlotJuggler

Data sources (file and streaming)

  • Load CSV files.
  • Load ULog (PX4).
  • Subscribe to many different streaming sources: MQTT, WebSockets, ZeroMQ, UDP, etc.
  • Understand data formats such as JSON, CBOR, BSON, Message Pack, etc.
  • Well integrated with ROS: open rosbags and/or subscribe to ROS topics (both ROS1 and ROS2).
  • Supports the Lab Streaming Layer, that is used by many devices.
  • Easily add your custom data source and/or formats…

Transform and analyze your data

PlotJuggler makes it easy to visualize data but also to analyze it. You can manipulate your time series using a simple and extendable Transform Editor.

Alternatively, you may use the Custom Function Editor, which allows you to create Multi-input / Single-output functions using a scripting language based on Lua.

If you are not familiar with Lua, don’t be afraid, you won’t need more than 5 minutes to learn it ;)

Tutorials

To learn how to use PlotJuggler, check the tutorials here:

Tutorial 1 Tutorial 2 Tutorial 3

Supported plugins

Some plugins can be found in a different repository. The individual README files should include all the information needed to compile and use the plugin.

Please submit specific issues, Pull Requests and questions on the related Github repository:

If you want a simple example to learn how to write your own plugins, have a look at PlotJuggler/plotjuggler-sample-plugins

Installation

You can download the latest ready to use binaries from the Release page.

| 🐧 Linux | 🍎 macOS | 🪟 Windows | 📦 Debian | |:--------:|:--------:|:----------:|:---------:| | **AppImage** | **Installer** | **Installer** | **Packages** | | x86 / arm64 | x86 / arm64 | x64 | bookworm, trixie |

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package plotjuggler

3.17.2 (2026-05-11)

  • Rework Foxglove and PlotJuggler websocket bridge plugins to accept arbitrary websocket URLs (#1361)
  • Fix crash when saving empty/zero-byte layout XML files (#1362)
  • Add alert for plotjuggler.com phishing site

3.17.1 (2026-05-04)

  • Fix Windows installer: flatten embeddable Python next to plotjuggler.exe
  • Bundle MSVC C++ runtime DLLs in Windows installer
  • Make AppImage / Windows / Debian artifacts portable across hosts
  • Be resilient to issues with Python initialization
  • CI fixes: sanitize branch ref_name for filenames, grant contents:write for release uploads

3.17.0 (2026-04-27)

  • New plugin: ToolboxMosaico for Mosaico Flight datasets, with streaming pullTopics and per-topic download progress UI (#1340)
  • New plugin: Serial Port DataStreamer with nested-JSON support and robust port parsing (#1314)
  • New parser: OMG IDL support for ROS 2 message definitions (#1345)
  • New ToolboxCSV: rewritten CSV/Parquet export with single-file and multi-file modes, topic filter, time-gap segmentation and NaN/Null/Inf detection (replaces the legacy CSV export)
  • Function Editor: Python custom functions, library dialog, and UX refactor (red highlight on empty name, vertical splitter)
  • UDP DataStreamer: header-byte dispatch for multi-type payloads, with topic→descriptor mapping in the protobuf parser (#1144)
  • Add common statistics SISO transforms: RMS, MAV, stddev, peak-to-peak (#1325)
  • Fix CSV loading issues (#1338, addresses #850, #987, #1000)
  • Fix curve restoration when loading layout XML files (#1339)
  • dataload_ulog: support files larger than 2 GB (#1346)
  • parser_ros: emit Header fields per the schema, drop double-prefix (#1350)
  • rosx_introspection: parse bounded sequence syntax [<=N] (#1349)
  • MCAP: more resilient reading of corrupted files
  • AppImage: HiDPI scaling and theme isolation on GNOME (#1344)
  • Update Qt Advanced Docking to 4.5 and fix a Wayland issue
  • Fix tree view collisions when a curve path is also a parent node, and stale X-axis ordering / Parquet column list
  • Fix #749: wrap multi-file prefix dialog content in QScrollArea
  • Fix #464: -d flag data is no longer overwritten when a layout is also passed with -l
  • Fix #1052: segfault when a dock area is destroyed during mouse events
  • Fix #1080: vertical zoom no longer stuck at max 0.1
  • Fix #1291: use UTC when formatting epoch-based time axis labels
  • Fix #1014: deterministic attribute order in layout XML
  • Fix #1151: always save colormaps in layout XML
  • Fix #994: save/restore streaming buffer size in layout XML
  • Fix #1326: standalone time-like CSV columns kept as strings
  • Fix #1062: bump nlohmann_json to v3.13.0 for clang >= 19 compatibility
  • Fix #1324: keep internal series names aligned after prefix remap
  • Fix #967, #528: --buffer_size actually sets the value and the time slider updates on offset toggle
  • omgidl: enable /Zc:__cplusplus for MSVC to satisfy peglib's C++17 check
  • CI/build hardening: ros2-rolling typesupport, Conan/Homebrew

File truncated at 100 lines see the full file

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged plotjuggler at Robotics Stack Exchange

Package symbol

plotjuggler package from plotjuggler repo

plotjuggler

ROS Distro
galactic

Package Summary

Version 3.17.2
License MPL-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/facontidavide/PlotJuggler.git
VCS Type git
VCS Version main
Last Updated 2026-05-11
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

PlotJuggler: juggle with data

Additional Links

Maintainers

  • Davide Faconti

Authors

  • Davide Faconti

ALERT: do NOT visit plotjuggler.com

That is probably a Malware / Phishing page impersonating us.

We are taking urgent actions to brint it down.

PlotJuggler

windows ubuntu macos ros2-humble ros2-jazzy ros2-rolling Tweet

Gold Sponsor:

Greenzie Intermodalics Greenzie

PlotJuggler 3.17

PlotJuggler is a tool to visualize time series that is fast, powerful and intuitive.

Noteworthy features:

  • Simple Drag & Drop user interface.
  • Load data from file.
  • Connect to live streaming of data.
  • Save the visualization layout and configurations to reuse them later.
  • Fast OpenGL visualization.
  • Can handle thousands of timeseries and millions of data points.
  • Transform your data using a simple editor: derivative, moving average, integral, etc…
  • PlotJuggler can be easily extended using plugins.

PlotJuggler

Data sources (file and streaming)

  • Load CSV files.
  • Load ULog (PX4).
  • Subscribe to many different streaming sources: MQTT, WebSockets, ZeroMQ, UDP, etc.
  • Understand data formats such as JSON, CBOR, BSON, Message Pack, etc.
  • Well integrated with ROS: open rosbags and/or subscribe to ROS topics (both ROS1 and ROS2).
  • Supports the Lab Streaming Layer, that is used by many devices.
  • Easily add your custom data source and/or formats…

Transform and analyze your data

PlotJuggler makes it easy to visualize data but also to analyze it. You can manipulate your time series using a simple and extendable Transform Editor.

Alternatively, you may use the Custom Function Editor, which allows you to create Multi-input / Single-output functions using a scripting language based on Lua.

If you are not familiar with Lua, don’t be afraid, you won’t need more than 5 minutes to learn it ;)

Tutorials

To learn how to use PlotJuggler, check the tutorials here:

Tutorial 1 Tutorial 2 Tutorial 3

Supported plugins

Some plugins can be found in a different repository. The individual README files should include all the information needed to compile and use the plugin.

Please submit specific issues, Pull Requests and questions on the related Github repository:

If you want a simple example to learn how to write your own plugins, have a look at PlotJuggler/plotjuggler-sample-plugins

Installation

You can download the latest ready to use binaries from the Release page.

| 🐧 Linux | 🍎 macOS | 🪟 Windows | 📦 Debian | |:--------:|:--------:|:----------:|:---------:| | **AppImage** | **Installer** | **Installer** | **Packages** | | x86 / arm64 | x86 / arm64 | x64 | bookworm, trixie |

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package plotjuggler

3.17.2 (2026-05-11)

  • Rework Foxglove and PlotJuggler websocket bridge plugins to accept arbitrary websocket URLs (#1361)
  • Fix crash when saving empty/zero-byte layout XML files (#1362)
  • Add alert for plotjuggler.com phishing site

3.17.1 (2026-05-04)

  • Fix Windows installer: flatten embeddable Python next to plotjuggler.exe
  • Bundle MSVC C++ runtime DLLs in Windows installer
  • Make AppImage / Windows / Debian artifacts portable across hosts
  • Be resilient to issues with Python initialization
  • CI fixes: sanitize branch ref_name for filenames, grant contents:write for release uploads

3.17.0 (2026-04-27)

  • New plugin: ToolboxMosaico for Mosaico Flight datasets, with streaming pullTopics and per-topic download progress UI (#1340)
  • New plugin: Serial Port DataStreamer with nested-JSON support and robust port parsing (#1314)
  • New parser: OMG IDL support for ROS 2 message definitions (#1345)
  • New ToolboxCSV: rewritten CSV/Parquet export with single-file and multi-file modes, topic filter, time-gap segmentation and NaN/Null/Inf detection (replaces the legacy CSV export)
  • Function Editor: Python custom functions, library dialog, and UX refactor (red highlight on empty name, vertical splitter)
  • UDP DataStreamer: header-byte dispatch for multi-type payloads, with topic→descriptor mapping in the protobuf parser (#1144)
  • Add common statistics SISO transforms: RMS, MAV, stddev, peak-to-peak (#1325)
  • Fix CSV loading issues (#1338, addresses #850, #987, #1000)
  • Fix curve restoration when loading layout XML files (#1339)
  • dataload_ulog: support files larger than 2 GB (#1346)
  • parser_ros: emit Header fields per the schema, drop double-prefix (#1350)
  • rosx_introspection: parse bounded sequence syntax [<=N] (#1349)
  • MCAP: more resilient reading of corrupted files
  • AppImage: HiDPI scaling and theme isolation on GNOME (#1344)
  • Update Qt Advanced Docking to 4.5 and fix a Wayland issue
  • Fix tree view collisions when a curve path is also a parent node, and stale X-axis ordering / Parquet column list
  • Fix #749: wrap multi-file prefix dialog content in QScrollArea
  • Fix #464: -d flag data is no longer overwritten when a layout is also passed with -l
  • Fix #1052: segfault when a dock area is destroyed during mouse events
  • Fix #1080: vertical zoom no longer stuck at max 0.1
  • Fix #1291: use UTC when formatting epoch-based time axis labels
  • Fix #1014: deterministic attribute order in layout XML
  • Fix #1151: always save colormaps in layout XML
  • Fix #994: save/restore streaming buffer size in layout XML
  • Fix #1326: standalone time-like CSV columns kept as strings
  • Fix #1062: bump nlohmann_json to v3.13.0 for clang >= 19 compatibility
  • Fix #1324: keep internal series names aligned after prefix remap
  • Fix #967, #528: --buffer_size actually sets the value and the time slider updates on offset toggle
  • omgidl: enable /Zc:__cplusplus for MSVC to satisfy peglib's C++17 check
  • CI/build hardening: ros2-rolling typesupport, Conan/Homebrew

File truncated at 100 lines see the full file

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged plotjuggler at Robotics Stack Exchange

Package symbol

plotjuggler package from plotjuggler repo

plotjuggler

ROS Distro
foxy

Package Summary

Version 3.17.2
License MPL-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/facontidavide/PlotJuggler.git
VCS Type git
VCS Version main
Last Updated 2026-05-11
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

PlotJuggler: juggle with data

Additional Links

Maintainers

  • Davide Faconti

Authors

  • Davide Faconti

ALERT: do NOT visit plotjuggler.com

That is probably a Malware / Phishing page impersonating us.

We are taking urgent actions to brint it down.

PlotJuggler

windows ubuntu macos ros2-humble ros2-jazzy ros2-rolling Tweet

Gold Sponsor:

Greenzie Intermodalics Greenzie

PlotJuggler 3.17

PlotJuggler is a tool to visualize time series that is fast, powerful and intuitive.

Noteworthy features:

  • Simple Drag & Drop user interface.
  • Load data from file.
  • Connect to live streaming of data.
  • Save the visualization layout and configurations to reuse them later.
  • Fast OpenGL visualization.
  • Can handle thousands of timeseries and millions of data points.
  • Transform your data using a simple editor: derivative, moving average, integral, etc…
  • PlotJuggler can be easily extended using plugins.

PlotJuggler

Data sources (file and streaming)

  • Load CSV files.
  • Load ULog (PX4).
  • Subscribe to many different streaming sources: MQTT, WebSockets, ZeroMQ, UDP, etc.
  • Understand data formats such as JSON, CBOR, BSON, Message Pack, etc.
  • Well integrated with ROS: open rosbags and/or subscribe to ROS topics (both ROS1 and ROS2).
  • Supports the Lab Streaming Layer, that is used by many devices.
  • Easily add your custom data source and/or formats…

Transform and analyze your data

PlotJuggler makes it easy to visualize data but also to analyze it. You can manipulate your time series using a simple and extendable Transform Editor.

Alternatively, you may use the Custom Function Editor, which allows you to create Multi-input / Single-output functions using a scripting language based on Lua.

If you are not familiar with Lua, don’t be afraid, you won’t need more than 5 minutes to learn it ;)

Tutorials

To learn how to use PlotJuggler, check the tutorials here:

Tutorial 1 Tutorial 2 Tutorial 3

Supported plugins

Some plugins can be found in a different repository. The individual README files should include all the information needed to compile and use the plugin.

Please submit specific issues, Pull Requests and questions on the related Github repository:

If you want a simple example to learn how to write your own plugins, have a look at PlotJuggler/plotjuggler-sample-plugins

Installation

You can download the latest ready to use binaries from the Release page.

| 🐧 Linux | 🍎 macOS | 🪟 Windows | 📦 Debian | |:--------:|:--------:|:----------:|:---------:| | **AppImage** | **Installer** | **Installer** | **Packages** | | x86 / arm64 | x86 / arm64 | x64 | bookworm, trixie |

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package plotjuggler

3.17.2 (2026-05-11)

  • Rework Foxglove and PlotJuggler websocket bridge plugins to accept arbitrary websocket URLs (#1361)
  • Fix crash when saving empty/zero-byte layout XML files (#1362)
  • Add alert for plotjuggler.com phishing site

3.17.1 (2026-05-04)

  • Fix Windows installer: flatten embeddable Python next to plotjuggler.exe
  • Bundle MSVC C++ runtime DLLs in Windows installer
  • Make AppImage / Windows / Debian artifacts portable across hosts
  • Be resilient to issues with Python initialization
  • CI fixes: sanitize branch ref_name for filenames, grant contents:write for release uploads

3.17.0 (2026-04-27)

  • New plugin: ToolboxMosaico for Mosaico Flight datasets, with streaming pullTopics and per-topic download progress UI (#1340)
  • New plugin: Serial Port DataStreamer with nested-JSON support and robust port parsing (#1314)
  • New parser: OMG IDL support for ROS 2 message definitions (#1345)
  • New ToolboxCSV: rewritten CSV/Parquet export with single-file and multi-file modes, topic filter, time-gap segmentation and NaN/Null/Inf detection (replaces the legacy CSV export)
  • Function Editor: Python custom functions, library dialog, and UX refactor (red highlight on empty name, vertical splitter)
  • UDP DataStreamer: header-byte dispatch for multi-type payloads, with topic→descriptor mapping in the protobuf parser (#1144)
  • Add common statistics SISO transforms: RMS, MAV, stddev, peak-to-peak (#1325)
  • Fix CSV loading issues (#1338, addresses #850, #987, #1000)
  • Fix curve restoration when loading layout XML files (#1339)
  • dataload_ulog: support files larger than 2 GB (#1346)
  • parser_ros: emit Header fields per the schema, drop double-prefix (#1350)
  • rosx_introspection: parse bounded sequence syntax [<=N] (#1349)
  • MCAP: more resilient reading of corrupted files
  • AppImage: HiDPI scaling and theme isolation on GNOME (#1344)
  • Update Qt Advanced Docking to 4.5 and fix a Wayland issue
  • Fix tree view collisions when a curve path is also a parent node, and stale X-axis ordering / Parquet column list
  • Fix #749: wrap multi-file prefix dialog content in QScrollArea
  • Fix #464: -d flag data is no longer overwritten when a layout is also passed with -l
  • Fix #1052: segfault when a dock area is destroyed during mouse events
  • Fix #1080: vertical zoom no longer stuck at max 0.1
  • Fix #1291: use UTC when formatting epoch-based time axis labels
  • Fix #1014: deterministic attribute order in layout XML
  • Fix #1151: always save colormaps in layout XML
  • Fix #994: save/restore streaming buffer size in layout XML
  • Fix #1326: standalone time-like CSV columns kept as strings
  • Fix #1062: bump nlohmann_json to v3.13.0 for clang >= 19 compatibility
  • Fix #1324: keep internal series names aligned after prefix remap
  • Fix #967, #528: --buffer_size actually sets the value and the time slider updates on offset toggle
  • omgidl: enable /Zc:__cplusplus for MSVC to satisfy peglib's C++17 check
  • CI/build hardening: ros2-rolling typesupport, Conan/Homebrew

File truncated at 100 lines see the full file

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged plotjuggler at Robotics Stack Exchange

Package symbol

plotjuggler package from plotjuggler repo

plotjuggler

ROS Distro
iron

Package Summary

Version 3.17.2
License MPL-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/facontidavide/PlotJuggler.git
VCS Type git
VCS Version main
Last Updated 2026-05-11
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

PlotJuggler: juggle with data

Additional Links

Maintainers

  • Davide Faconti

Authors

  • Davide Faconti

ALERT: do NOT visit plotjuggler.com

That is probably a Malware / Phishing page impersonating us.

We are taking urgent actions to brint it down.

PlotJuggler

windows ubuntu macos ros2-humble ros2-jazzy ros2-rolling Tweet

Gold Sponsor:

Greenzie Intermodalics Greenzie

PlotJuggler 3.17

PlotJuggler is a tool to visualize time series that is fast, powerful and intuitive.

Noteworthy features:

  • Simple Drag & Drop user interface.
  • Load data from file.
  • Connect to live streaming of data.
  • Save the visualization layout and configurations to reuse them later.
  • Fast OpenGL visualization.
  • Can handle thousands of timeseries and millions of data points.
  • Transform your data using a simple editor: derivative, moving average, integral, etc…
  • PlotJuggler can be easily extended using plugins.

PlotJuggler

Data sources (file and streaming)

  • Load CSV files.
  • Load ULog (PX4).
  • Subscribe to many different streaming sources: MQTT, WebSockets, ZeroMQ, UDP, etc.
  • Understand data formats such as JSON, CBOR, BSON, Message Pack, etc.
  • Well integrated with ROS: open rosbags and/or subscribe to ROS topics (both ROS1 and ROS2).
  • Supports the Lab Streaming Layer, that is used by many devices.
  • Easily add your custom data source and/or formats…

Transform and analyze your data

PlotJuggler makes it easy to visualize data but also to analyze it. You can manipulate your time series using a simple and extendable Transform Editor.

Alternatively, you may use the Custom Function Editor, which allows you to create Multi-input / Single-output functions using a scripting language based on Lua.

If you are not familiar with Lua, don’t be afraid, you won’t need more than 5 minutes to learn it ;)

Tutorials

To learn how to use PlotJuggler, check the tutorials here:

Tutorial 1 Tutorial 2 Tutorial 3

Supported plugins

Some plugins can be found in a different repository. The individual README files should include all the information needed to compile and use the plugin.

Please submit specific issues, Pull Requests and questions on the related Github repository:

If you want a simple example to learn how to write your own plugins, have a look at PlotJuggler/plotjuggler-sample-plugins

Installation

You can download the latest ready to use binaries from the Release page.

| 🐧 Linux | 🍎 macOS | 🪟 Windows | 📦 Debian | |:--------:|:--------:|:----------:|:---------:| | **AppImage** | **Installer** | **Installer** | **Packages** | | x86 / arm64 | x86 / arm64 | x64 | bookworm, trixie |

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package plotjuggler

3.17.2 (2026-05-11)

  • Rework Foxglove and PlotJuggler websocket bridge plugins to accept arbitrary websocket URLs (#1361)
  • Fix crash when saving empty/zero-byte layout XML files (#1362)
  • Add alert for plotjuggler.com phishing site

3.17.1 (2026-05-04)

  • Fix Windows installer: flatten embeddable Python next to plotjuggler.exe
  • Bundle MSVC C++ runtime DLLs in Windows installer
  • Make AppImage / Windows / Debian artifacts portable across hosts
  • Be resilient to issues with Python initialization
  • CI fixes: sanitize branch ref_name for filenames, grant contents:write for release uploads

3.17.0 (2026-04-27)

  • New plugin: ToolboxMosaico for Mosaico Flight datasets, with streaming pullTopics and per-topic download progress UI (#1340)
  • New plugin: Serial Port DataStreamer with nested-JSON support and robust port parsing (#1314)
  • New parser: OMG IDL support for ROS 2 message definitions (#1345)
  • New ToolboxCSV: rewritten CSV/Parquet export with single-file and multi-file modes, topic filter, time-gap segmentation and NaN/Null/Inf detection (replaces the legacy CSV export)
  • Function Editor: Python custom functions, library dialog, and UX refactor (red highlight on empty name, vertical splitter)
  • UDP DataStreamer: header-byte dispatch for multi-type payloads, with topic→descriptor mapping in the protobuf parser (#1144)
  • Add common statistics SISO transforms: RMS, MAV, stddev, peak-to-peak (#1325)
  • Fix CSV loading issues (#1338, addresses #850, #987, #1000)
  • Fix curve restoration when loading layout XML files (#1339)
  • dataload_ulog: support files larger than 2 GB (#1346)
  • parser_ros: emit Header fields per the schema, drop double-prefix (#1350)
  • rosx_introspection: parse bounded sequence syntax [<=N] (#1349)
  • MCAP: more resilient reading of corrupted files
  • AppImage: HiDPI scaling and theme isolation on GNOME (#1344)
  • Update Qt Advanced Docking to 4.5 and fix a Wayland issue
  • Fix tree view collisions when a curve path is also a parent node, and stale X-axis ordering / Parquet column list
  • Fix #749: wrap multi-file prefix dialog content in QScrollArea
  • Fix #464: -d flag data is no longer overwritten when a layout is also passed with -l
  • Fix #1052: segfault when a dock area is destroyed during mouse events
  • Fix #1080: vertical zoom no longer stuck at max 0.1
  • Fix #1291: use UTC when formatting epoch-based time axis labels
  • Fix #1014: deterministic attribute order in layout XML
  • Fix #1151: always save colormaps in layout XML
  • Fix #994: save/restore streaming buffer size in layout XML
  • Fix #1326: standalone time-like CSV columns kept as strings
  • Fix #1062: bump nlohmann_json to v3.13.0 for clang >= 19 compatibility
  • Fix #1324: keep internal series names aligned after prefix remap
  • Fix #967, #528: --buffer_size actually sets the value and the time slider updates on offset toggle
  • omgidl: enable /Zc:__cplusplus for MSVC to satisfy peglib's C++17 check
  • CI/build hardening: ros2-rolling typesupport, Conan/Homebrew

File truncated at 100 lines see the full file

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged plotjuggler at Robotics Stack Exchange

No version for distro lunar showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

plotjuggler package from plotjuggler repo

plotjuggler

ROS Distro
humble

Package Summary

Version 3.17.2
License MPL-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/facontidavide/PlotJuggler.git
VCS Type git
VCS Version main
Last Updated 2026-05-11
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

PlotJuggler: juggle with data

Additional Links

Maintainers

  • Davide Faconti

Authors

  • Davide Faconti

ALERT: do NOT visit plotjuggler.com

That is probably a Malware / Phishing page impersonating us.

We are taking urgent actions to brint it down.

PlotJuggler

windows ubuntu macos ros2-humble ros2-jazzy ros2-rolling Tweet

Gold Sponsor:

Greenzie Intermodalics Greenzie

PlotJuggler 3.17

PlotJuggler is a tool to visualize time series that is fast, powerful and intuitive.

Noteworthy features:

  • Simple Drag & Drop user interface.
  • Load data from file.
  • Connect to live streaming of data.
  • Save the visualization layout and configurations to reuse them later.
  • Fast OpenGL visualization.
  • Can handle thousands of timeseries and millions of data points.
  • Transform your data using a simple editor: derivative, moving average, integral, etc…
  • PlotJuggler can be easily extended using plugins.

PlotJuggler

Data sources (file and streaming)

  • Load CSV files.
  • Load ULog (PX4).
  • Subscribe to many different streaming sources: MQTT, WebSockets, ZeroMQ, UDP, etc.
  • Understand data formats such as JSON, CBOR, BSON, Message Pack, etc.
  • Well integrated with ROS: open rosbags and/or subscribe to ROS topics (both ROS1 and ROS2).
  • Supports the Lab Streaming Layer, that is used by many devices.
  • Easily add your custom data source and/or formats…

Transform and analyze your data

PlotJuggler makes it easy to visualize data but also to analyze it. You can manipulate your time series using a simple and extendable Transform Editor.

Alternatively, you may use the Custom Function Editor, which allows you to create Multi-input / Single-output functions using a scripting language based on Lua.

If you are not familiar with Lua, don’t be afraid, you won’t need more than 5 minutes to learn it ;)

Tutorials

To learn how to use PlotJuggler, check the tutorials here:

Tutorial 1 Tutorial 2 Tutorial 3

Supported plugins

Some plugins can be found in a different repository. The individual README files should include all the information needed to compile and use the plugin.

Please submit specific issues, Pull Requests and questions on the related Github repository:

If you want a simple example to learn how to write your own plugins, have a look at PlotJuggler/plotjuggler-sample-plugins

Installation

You can download the latest ready to use binaries from the Release page.

| 🐧 Linux | 🍎 macOS | 🪟 Windows | 📦 Debian | |:--------:|:--------:|:----------:|:---------:| | **AppImage** | **Installer** | **Installer** | **Packages** | | x86 / arm64 | x86 / arm64 | x64 | bookworm, trixie |

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package plotjuggler

3.17.2 (2026-05-11)

  • Rework Foxglove and PlotJuggler websocket bridge plugins to accept arbitrary websocket URLs (#1361)
  • Fix crash when saving empty/zero-byte layout XML files (#1362)
  • Add alert for plotjuggler.com phishing site

3.17.1 (2026-05-04)

  • Fix Windows installer: flatten embeddable Python next to plotjuggler.exe
  • Bundle MSVC C++ runtime DLLs in Windows installer
  • Make AppImage / Windows / Debian artifacts portable across hosts
  • Be resilient to issues with Python initialization
  • CI fixes: sanitize branch ref_name for filenames, grant contents:write for release uploads

3.17.0 (2026-04-27)

  • New plugin: ToolboxMosaico for Mosaico Flight datasets, with streaming pullTopics and per-topic download progress UI (#1340)
  • New plugin: Serial Port DataStreamer with nested-JSON support and robust port parsing (#1314)
  • New parser: OMG IDL support for ROS 2 message definitions (#1345)
  • New ToolboxCSV: rewritten CSV/Parquet export with single-file and multi-file modes, topic filter, time-gap segmentation and NaN/Null/Inf detection (replaces the legacy CSV export)
  • Function Editor: Python custom functions, library dialog, and UX refactor (red highlight on empty name, vertical splitter)
  • UDP DataStreamer: header-byte dispatch for multi-type payloads, with topic→descriptor mapping in the protobuf parser (#1144)
  • Add common statistics SISO transforms: RMS, MAV, stddev, peak-to-peak (#1325)
  • Fix CSV loading issues (#1338, addresses #850, #987, #1000)
  • Fix curve restoration when loading layout XML files (#1339)
  • dataload_ulog: support files larger than 2 GB (#1346)
  • parser_ros: emit Header fields per the schema, drop double-prefix (#1350)
  • rosx_introspection: parse bounded sequence syntax [<=N] (#1349)
  • MCAP: more resilient reading of corrupted files
  • AppImage: HiDPI scaling and theme isolation on GNOME (#1344)
  • Update Qt Advanced Docking to 4.5 and fix a Wayland issue
  • Fix tree view collisions when a curve path is also a parent node, and stale X-axis ordering / Parquet column list
  • Fix #749: wrap multi-file prefix dialog content in QScrollArea
  • Fix #464: -d flag data is no longer overwritten when a layout is also passed with -l
  • Fix #1052: segfault when a dock area is destroyed during mouse events
  • Fix #1080: vertical zoom no longer stuck at max 0.1
  • Fix #1291: use UTC when formatting epoch-based time axis labels
  • Fix #1014: deterministic attribute order in layout XML
  • Fix #1151: always save colormaps in layout XML
  • Fix #994: save/restore streaming buffer size in layout XML
  • Fix #1326: standalone time-like CSV columns kept as strings
  • Fix #1062: bump nlohmann_json to v3.13.0 for clang >= 19 compatibility
  • Fix #1324: keep internal series names aligned after prefix remap
  • Fix #967, #528: --buffer_size actually sets the value and the time slider updates on offset toggle
  • omgidl: enable /Zc:__cplusplus for MSVC to satisfy peglib's C++17 check
  • CI/build hardening: ros2-rolling typesupport, Conan/Homebrew

File truncated at 100 lines see the full file

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged plotjuggler at Robotics Stack Exchange

No version for distro jade showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

plotjuggler package from plotjuggler repo

plotjuggler

ROS Distro
humble

Package Summary

Version 3.17.2
License MPL-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/facontidavide/PlotJuggler.git
VCS Type git
VCS Version main
Last Updated 2026-05-11
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

PlotJuggler: juggle with data

Additional Links

Maintainers

  • Davide Faconti

Authors

  • Davide Faconti

ALERT: do NOT visit plotjuggler.com

That is probably a Malware / Phishing page impersonating us.

We are taking urgent actions to brint it down.

PlotJuggler

windows ubuntu macos ros2-humble ros2-jazzy ros2-rolling Tweet

Gold Sponsor:

Greenzie Intermodalics Greenzie

PlotJuggler 3.17

PlotJuggler is a tool to visualize time series that is fast, powerful and intuitive.

Noteworthy features:

  • Simple Drag & Drop user interface.
  • Load data from file.
  • Connect to live streaming of data.
  • Save the visualization layout and configurations to reuse them later.
  • Fast OpenGL visualization.
  • Can handle thousands of timeseries and millions of data points.
  • Transform your data using a simple editor: derivative, moving average, integral, etc…
  • PlotJuggler can be easily extended using plugins.

PlotJuggler

Data sources (file and streaming)

  • Load CSV files.
  • Load ULog (PX4).
  • Subscribe to many different streaming sources: MQTT, WebSockets, ZeroMQ, UDP, etc.
  • Understand data formats such as JSON, CBOR, BSON, Message Pack, etc.
  • Well integrated with ROS: open rosbags and/or subscribe to ROS topics (both ROS1 and ROS2).
  • Supports the Lab Streaming Layer, that is used by many devices.
  • Easily add your custom data source and/or formats…

Transform and analyze your data

PlotJuggler makes it easy to visualize data but also to analyze it. You can manipulate your time series using a simple and extendable Transform Editor.

Alternatively, you may use the Custom Function Editor, which allows you to create Multi-input / Single-output functions using a scripting language based on Lua.

If you are not familiar with Lua, don’t be afraid, you won’t need more than 5 minutes to learn it ;)

Tutorials

To learn how to use PlotJuggler, check the tutorials here:

Tutorial 1 Tutorial 2 Tutorial 3

Supported plugins

Some plugins can be found in a different repository. The individual README files should include all the information needed to compile and use the plugin.

Please submit specific issues, Pull Requests and questions on the related Github repository:

If you want a simple example to learn how to write your own plugins, have a look at PlotJuggler/plotjuggler-sample-plugins

Installation

You can download the latest ready to use binaries from the Release page.

| 🐧 Linux | 🍎 macOS | 🪟 Windows | 📦 Debian | |:--------:|:--------:|:----------:|:---------:| | **AppImage** | **Installer** | **Installer** | **Packages** | | x86 / arm64 | x86 / arm64 | x64 | bookworm, trixie |

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package plotjuggler

3.17.2 (2026-05-11)

  • Rework Foxglove and PlotJuggler websocket bridge plugins to accept arbitrary websocket URLs (#1361)
  • Fix crash when saving empty/zero-byte layout XML files (#1362)
  • Add alert for plotjuggler.com phishing site

3.17.1 (2026-05-04)

  • Fix Windows installer: flatten embeddable Python next to plotjuggler.exe
  • Bundle MSVC C++ runtime DLLs in Windows installer
  • Make AppImage / Windows / Debian artifacts portable across hosts
  • Be resilient to issues with Python initialization
  • CI fixes: sanitize branch ref_name for filenames, grant contents:write for release uploads

3.17.0 (2026-04-27)

  • New plugin: ToolboxMosaico for Mosaico Flight datasets, with streaming pullTopics and per-topic download progress UI (#1340)
  • New plugin: Serial Port DataStreamer with nested-JSON support and robust port parsing (#1314)
  • New parser: OMG IDL support for ROS 2 message definitions (#1345)
  • New ToolboxCSV: rewritten CSV/Parquet export with single-file and multi-file modes, topic filter, time-gap segmentation and NaN/Null/Inf detection (replaces the legacy CSV export)
  • Function Editor: Python custom functions, library dialog, and UX refactor (red highlight on empty name, vertical splitter)
  • UDP DataStreamer: header-byte dispatch for multi-type payloads, with topic→descriptor mapping in the protobuf parser (#1144)
  • Add common statistics SISO transforms: RMS, MAV, stddev, peak-to-peak (#1325)
  • Fix CSV loading issues (#1338, addresses #850, #987, #1000)
  • Fix curve restoration when loading layout XML files (#1339)
  • dataload_ulog: support files larger than 2 GB (#1346)
  • parser_ros: emit Header fields per the schema, drop double-prefix (#1350)
  • rosx_introspection: parse bounded sequence syntax [<=N] (#1349)
  • MCAP: more resilient reading of corrupted files
  • AppImage: HiDPI scaling and theme isolation on GNOME (#1344)
  • Update Qt Advanced Docking to 4.5 and fix a Wayland issue
  • Fix tree view collisions when a curve path is also a parent node, and stale X-axis ordering / Parquet column list
  • Fix #749: wrap multi-file prefix dialog content in QScrollArea
  • Fix #464: -d flag data is no longer overwritten when a layout is also passed with -l
  • Fix #1052: segfault when a dock area is destroyed during mouse events
  • Fix #1080: vertical zoom no longer stuck at max 0.1
  • Fix #1291: use UTC when formatting epoch-based time axis labels
  • Fix #1014: deterministic attribute order in layout XML
  • Fix #1151: always save colormaps in layout XML
  • Fix #994: save/restore streaming buffer size in layout XML
  • Fix #1326: standalone time-like CSV columns kept as strings
  • Fix #1062: bump nlohmann_json to v3.13.0 for clang >= 19 compatibility
  • Fix #1324: keep internal series names aligned after prefix remap
  • Fix #967, #528: --buffer_size actually sets the value and the time slider updates on offset toggle
  • omgidl: enable /Zc:__cplusplus for MSVC to satisfy peglib's C++17 check
  • CI/build hardening: ros2-rolling typesupport, Conan/Homebrew

File truncated at 100 lines see the full file

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged plotjuggler at Robotics Stack Exchange

No version for distro indigo showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

plotjuggler package from plotjuggler repo

plotjuggler

ROS Distro
humble

Package Summary

Version 3.17.2
License MPL-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/facontidavide/PlotJuggler.git
VCS Type git
VCS Version main
Last Updated 2026-05-11
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

PlotJuggler: juggle with data

Additional Links

Maintainers

  • Davide Faconti

Authors

  • Davide Faconti

ALERT: do NOT visit plotjuggler.com

That is probably a Malware / Phishing page impersonating us.

We are taking urgent actions to brint it down.

PlotJuggler

windows ubuntu macos ros2-humble ros2-jazzy ros2-rolling Tweet

Gold Sponsor:

Greenzie Intermodalics Greenzie

PlotJuggler 3.17

PlotJuggler is a tool to visualize time series that is fast, powerful and intuitive.

Noteworthy features:

  • Simple Drag & Drop user interface.
  • Load data from file.
  • Connect to live streaming of data.
  • Save the visualization layout and configurations to reuse them later.
  • Fast OpenGL visualization.
  • Can handle thousands of timeseries and millions of data points.
  • Transform your data using a simple editor: derivative, moving average, integral, etc…
  • PlotJuggler can be easily extended using plugins.

PlotJuggler

Data sources (file and streaming)

  • Load CSV files.
  • Load ULog (PX4).
  • Subscribe to many different streaming sources: MQTT, WebSockets, ZeroMQ, UDP, etc.
  • Understand data formats such as JSON, CBOR, BSON, Message Pack, etc.
  • Well integrated with ROS: open rosbags and/or subscribe to ROS topics (both ROS1 and ROS2).
  • Supports the Lab Streaming Layer, that is used by many devices.
  • Easily add your custom data source and/or formats…

Transform and analyze your data

PlotJuggler makes it easy to visualize data but also to analyze it. You can manipulate your time series using a simple and extendable Transform Editor.

Alternatively, you may use the Custom Function Editor, which allows you to create Multi-input / Single-output functions using a scripting language based on Lua.

If you are not familiar with Lua, don’t be afraid, you won’t need more than 5 minutes to learn it ;)

Tutorials

To learn how to use PlotJuggler, check the tutorials here:

Tutorial 1 Tutorial 2 Tutorial 3

Supported plugins

Some plugins can be found in a different repository. The individual README files should include all the information needed to compile and use the plugin.

Please submit specific issues, Pull Requests and questions on the related Github repository:

If you want a simple example to learn how to write your own plugins, have a look at PlotJuggler/plotjuggler-sample-plugins

Installation

You can download the latest ready to use binaries from the Release page.

| 🐧 Linux | 🍎 macOS | 🪟 Windows | 📦 Debian | |:--------:|:--------:|:----------:|:---------:| | **AppImage** | **Installer** | **Installer** | **Packages** | | x86 / arm64 | x86 / arm64 | x64 | bookworm, trixie |

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package plotjuggler

3.17.2 (2026-05-11)

  • Rework Foxglove and PlotJuggler websocket bridge plugins to accept arbitrary websocket URLs (#1361)
  • Fix crash when saving empty/zero-byte layout XML files (#1362)
  • Add alert for plotjuggler.com phishing site

3.17.1 (2026-05-04)

  • Fix Windows installer: flatten embeddable Python next to plotjuggler.exe
  • Bundle MSVC C++ runtime DLLs in Windows installer
  • Make AppImage / Windows / Debian artifacts portable across hosts
  • Be resilient to issues with Python initialization
  • CI fixes: sanitize branch ref_name for filenames, grant contents:write for release uploads

3.17.0 (2026-04-27)

  • New plugin: ToolboxMosaico for Mosaico Flight datasets, with streaming pullTopics and per-topic download progress UI (#1340)
  • New plugin: Serial Port DataStreamer with nested-JSON support and robust port parsing (#1314)
  • New parser: OMG IDL support for ROS 2 message definitions (#1345)
  • New ToolboxCSV: rewritten CSV/Parquet export with single-file and multi-file modes, topic filter, time-gap segmentation and NaN/Null/Inf detection (replaces the legacy CSV export)
  • Function Editor: Python custom functions, library dialog, and UX refactor (red highlight on empty name, vertical splitter)
  • UDP DataStreamer: header-byte dispatch for multi-type payloads, with topic→descriptor mapping in the protobuf parser (#1144)
  • Add common statistics SISO transforms: RMS, MAV, stddev, peak-to-peak (#1325)
  • Fix CSV loading issues (#1338, addresses #850, #987, #1000)
  • Fix curve restoration when loading layout XML files (#1339)
  • dataload_ulog: support files larger than 2 GB (#1346)
  • parser_ros: emit Header fields per the schema, drop double-prefix (#1350)
  • rosx_introspection: parse bounded sequence syntax [<=N] (#1349)
  • MCAP: more resilient reading of corrupted files
  • AppImage: HiDPI scaling and theme isolation on GNOME (#1344)
  • Update Qt Advanced Docking to 4.5 and fix a Wayland issue
  • Fix tree view collisions when a curve path is also a parent node, and stale X-axis ordering / Parquet column list
  • Fix #749: wrap multi-file prefix dialog content in QScrollArea
  • Fix #464: -d flag data is no longer overwritten when a layout is also passed with -l
  • Fix #1052: segfault when a dock area is destroyed during mouse events
  • Fix #1080: vertical zoom no longer stuck at max 0.1
  • Fix #1291: use UTC when formatting epoch-based time axis labels
  • Fix #1014: deterministic attribute order in layout XML
  • Fix #1151: always save colormaps in layout XML
  • Fix #994: save/restore streaming buffer size in layout XML
  • Fix #1326: standalone time-like CSV columns kept as strings
  • Fix #1062: bump nlohmann_json to v3.13.0 for clang >= 19 compatibility
  • Fix #1324: keep internal series names aligned after prefix remap
  • Fix #967, #528: --buffer_size actually sets the value and the time slider updates on offset toggle
  • omgidl: enable /Zc:__cplusplus for MSVC to satisfy peglib's C++17 check
  • CI/build hardening: ros2-rolling typesupport, Conan/Homebrew

File truncated at 100 lines see the full file

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged plotjuggler at Robotics Stack Exchange

No version for distro hydro showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

plotjuggler package from plotjuggler repo

plotjuggler

ROS Distro
humble

Package Summary

Version 3.17.2
License MPL-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/facontidavide/PlotJuggler.git
VCS Type git
VCS Version main
Last Updated 2026-05-11
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

PlotJuggler: juggle with data

Additional Links

Maintainers

  • Davide Faconti

Authors

  • Davide Faconti

ALERT: do NOT visit plotjuggler.com

That is probably a Malware / Phishing page impersonating us.

We are taking urgent actions to brint it down.

PlotJuggler

windows ubuntu macos ros2-humble ros2-jazzy ros2-rolling Tweet

Gold Sponsor:

Greenzie Intermodalics Greenzie

PlotJuggler 3.17

PlotJuggler is a tool to visualize time series that is fast, powerful and intuitive.

Noteworthy features:

  • Simple Drag & Drop user interface.
  • Load data from file.
  • Connect to live streaming of data.
  • Save the visualization layout and configurations to reuse them later.
  • Fast OpenGL visualization.
  • Can handle thousands of timeseries and millions of data points.
  • Transform your data using a simple editor: derivative, moving average, integral, etc…
  • PlotJuggler can be easily extended using plugins.

PlotJuggler

Data sources (file and streaming)

  • Load CSV files.
  • Load ULog (PX4).
  • Subscribe to many different streaming sources: MQTT, WebSockets, ZeroMQ, UDP, etc.
  • Understand data formats such as JSON, CBOR, BSON, Message Pack, etc.
  • Well integrated with ROS: open rosbags and/or subscribe to ROS topics (both ROS1 and ROS2).
  • Supports the Lab Streaming Layer, that is used by many devices.
  • Easily add your custom data source and/or formats…

Transform and analyze your data

PlotJuggler makes it easy to visualize data but also to analyze it. You can manipulate your time series using a simple and extendable Transform Editor.

Alternatively, you may use the Custom Function Editor, which allows you to create Multi-input / Single-output functions using a scripting language based on Lua.

If you are not familiar with Lua, don’t be afraid, you won’t need more than 5 minutes to learn it ;)

Tutorials

To learn how to use PlotJuggler, check the tutorials here:

Tutorial 1 Tutorial 2 Tutorial 3

Supported plugins

Some plugins can be found in a different repository. The individual README files should include all the information needed to compile and use the plugin.

Please submit specific issues, Pull Requests and questions on the related Github repository:

If you want a simple example to learn how to write your own plugins, have a look at PlotJuggler/plotjuggler-sample-plugins

Installation

You can download the latest ready to use binaries from the Release page.

| 🐧 Linux | 🍎 macOS | 🪟 Windows | 📦 Debian | |:--------:|:--------:|:----------:|:---------:| | **AppImage** | **Installer** | **Installer** | **Packages** | | x86 / arm64 | x86 / arm64 | x64 | bookworm, trixie |

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package plotjuggler

3.17.2 (2026-05-11)

  • Rework Foxglove and PlotJuggler websocket bridge plugins to accept arbitrary websocket URLs (#1361)
  • Fix crash when saving empty/zero-byte layout XML files (#1362)
  • Add alert for plotjuggler.com phishing site

3.17.1 (2026-05-04)

  • Fix Windows installer: flatten embeddable Python next to plotjuggler.exe
  • Bundle MSVC C++ runtime DLLs in Windows installer
  • Make AppImage / Windows / Debian artifacts portable across hosts
  • Be resilient to issues with Python initialization
  • CI fixes: sanitize branch ref_name for filenames, grant contents:write for release uploads

3.17.0 (2026-04-27)

  • New plugin: ToolboxMosaico for Mosaico Flight datasets, with streaming pullTopics and per-topic download progress UI (#1340)
  • New plugin: Serial Port DataStreamer with nested-JSON support and robust port parsing (#1314)
  • New parser: OMG IDL support for ROS 2 message definitions (#1345)
  • New ToolboxCSV: rewritten CSV/Parquet export with single-file and multi-file modes, topic filter, time-gap segmentation and NaN/Null/Inf detection (replaces the legacy CSV export)
  • Function Editor: Python custom functions, library dialog, and UX refactor (red highlight on empty name, vertical splitter)
  • UDP DataStreamer: header-byte dispatch for multi-type payloads, with topic→descriptor mapping in the protobuf parser (#1144)
  • Add common statistics SISO transforms: RMS, MAV, stddev, peak-to-peak (#1325)
  • Fix CSV loading issues (#1338, addresses #850, #987, #1000)
  • Fix curve restoration when loading layout XML files (#1339)
  • dataload_ulog: support files larger than 2 GB (#1346)
  • parser_ros: emit Header fields per the schema, drop double-prefix (#1350)
  • rosx_introspection: parse bounded sequence syntax [<=N] (#1349)
  • MCAP: more resilient reading of corrupted files
  • AppImage: HiDPI scaling and theme isolation on GNOME (#1344)
  • Update Qt Advanced Docking to 4.5 and fix a Wayland issue
  • Fix tree view collisions when a curve path is also a parent node, and stale X-axis ordering / Parquet column list
  • Fix #749: wrap multi-file prefix dialog content in QScrollArea
  • Fix #464: -d flag data is no longer overwritten when a layout is also passed with -l
  • Fix #1052: segfault when a dock area is destroyed during mouse events
  • Fix #1080: vertical zoom no longer stuck at max 0.1
  • Fix #1291: use UTC when formatting epoch-based time axis labels
  • Fix #1014: deterministic attribute order in layout XML
  • Fix #1151: always save colormaps in layout XML
  • Fix #994: save/restore streaming buffer size in layout XML
  • Fix #1326: standalone time-like CSV columns kept as strings
  • Fix #1062: bump nlohmann_json to v3.13.0 for clang >= 19 compatibility
  • Fix #1324: keep internal series names aligned after prefix remap
  • Fix #967, #528: --buffer_size actually sets the value and the time slider updates on offset toggle
  • omgidl: enable /Zc:__cplusplus for MSVC to satisfy peglib's C++17 check
  • CI/build hardening: ros2-rolling typesupport, Conan/Homebrew

File truncated at 100 lines see the full file

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged plotjuggler at Robotics Stack Exchange

No version for distro kinetic showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

plotjuggler package from plotjuggler repo

plotjuggler

ROS Distro
humble

Package Summary

Version 3.17.2
License MPL-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/facontidavide/PlotJuggler.git
VCS Type git
VCS Version main
Last Updated 2026-05-11
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

PlotJuggler: juggle with data

Additional Links

Maintainers

  • Davide Faconti

Authors

  • Davide Faconti

ALERT: do NOT visit plotjuggler.com

That is probably a Malware / Phishing page impersonating us.

We are taking urgent actions to brint it down.

PlotJuggler

windows ubuntu macos ros2-humble ros2-jazzy ros2-rolling Tweet

Gold Sponsor:

Greenzie Intermodalics Greenzie

PlotJuggler 3.17

PlotJuggler is a tool to visualize time series that is fast, powerful and intuitive.

Noteworthy features:

  • Simple Drag & Drop user interface.
  • Load data from file.
  • Connect to live streaming of data.
  • Save the visualization layout and configurations to reuse them later.
  • Fast OpenGL visualization.
  • Can handle thousands of timeseries and millions of data points.
  • Transform your data using a simple editor: derivative, moving average, integral, etc…
  • PlotJuggler can be easily extended using plugins.

PlotJuggler

Data sources (file and streaming)

  • Load CSV files.
  • Load ULog (PX4).
  • Subscribe to many different streaming sources: MQTT, WebSockets, ZeroMQ, UDP, etc.
  • Understand data formats such as JSON, CBOR, BSON, Message Pack, etc.
  • Well integrated with ROS: open rosbags and/or subscribe to ROS topics (both ROS1 and ROS2).
  • Supports the Lab Streaming Layer, that is used by many devices.
  • Easily add your custom data source and/or formats…

Transform and analyze your data

PlotJuggler makes it easy to visualize data but also to analyze it. You can manipulate your time series using a simple and extendable Transform Editor.

Alternatively, you may use the Custom Function Editor, which allows you to create Multi-input / Single-output functions using a scripting language based on Lua.

If you are not familiar with Lua, don’t be afraid, you won’t need more than 5 minutes to learn it ;)

Tutorials

To learn how to use PlotJuggler, check the tutorials here:

Tutorial 1 Tutorial 2 Tutorial 3

Supported plugins

Some plugins can be found in a different repository. The individual README files should include all the information needed to compile and use the plugin.

Please submit specific issues, Pull Requests and questions on the related Github repository:

If you want a simple example to learn how to write your own plugins, have a look at PlotJuggler/plotjuggler-sample-plugins

Installation

You can download the latest ready to use binaries from the Release page.

| 🐧 Linux | 🍎 macOS | 🪟 Windows | 📦 Debian | |:--------:|:--------:|:----------:|:---------:| | **AppImage** | **Installer** | **Installer** | **Packages** | | x86 / arm64 | x86 / arm64 | x64 | bookworm, trixie |

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package plotjuggler

3.17.2 (2026-05-11)

  • Rework Foxglove and PlotJuggler websocket bridge plugins to accept arbitrary websocket URLs (#1361)
  • Fix crash when saving empty/zero-byte layout XML files (#1362)
  • Add alert for plotjuggler.com phishing site

3.17.1 (2026-05-04)

  • Fix Windows installer: flatten embeddable Python next to plotjuggler.exe
  • Bundle MSVC C++ runtime DLLs in Windows installer
  • Make AppImage / Windows / Debian artifacts portable across hosts
  • Be resilient to issues with Python initialization
  • CI fixes: sanitize branch ref_name for filenames, grant contents:write for release uploads

3.17.0 (2026-04-27)

  • New plugin: ToolboxMosaico for Mosaico Flight datasets, with streaming pullTopics and per-topic download progress UI (#1340)
  • New plugin: Serial Port DataStreamer with nested-JSON support and robust port parsing (#1314)
  • New parser: OMG IDL support for ROS 2 message definitions (#1345)
  • New ToolboxCSV: rewritten CSV/Parquet export with single-file and multi-file modes, topic filter, time-gap segmentation and NaN/Null/Inf detection (replaces the legacy CSV export)
  • Function Editor: Python custom functions, library dialog, and UX refactor (red highlight on empty name, vertical splitter)
  • UDP DataStreamer: header-byte dispatch for multi-type payloads, with topic→descriptor mapping in the protobuf parser (#1144)
  • Add common statistics SISO transforms: RMS, MAV, stddev, peak-to-peak (#1325)
  • Fix CSV loading issues (#1338, addresses #850, #987, #1000)
  • Fix curve restoration when loading layout XML files (#1339)
  • dataload_ulog: support files larger than 2 GB (#1346)
  • parser_ros: emit Header fields per the schema, drop double-prefix (#1350)
  • rosx_introspection: parse bounded sequence syntax [<=N] (#1349)
  • MCAP: more resilient reading of corrupted files
  • AppImage: HiDPI scaling and theme isolation on GNOME (#1344)
  • Update Qt Advanced Docking to 4.5 and fix a Wayland issue
  • Fix tree view collisions when a curve path is also a parent node, and stale X-axis ordering / Parquet column list
  • Fix #749: wrap multi-file prefix dialog content in QScrollArea
  • Fix #464: -d flag data is no longer overwritten when a layout is also passed with -l
  • Fix #1052: segfault when a dock area is destroyed during mouse events
  • Fix #1080: vertical zoom no longer stuck at max 0.1
  • Fix #1291: use UTC when formatting epoch-based time axis labels
  • Fix #1014: deterministic attribute order in layout XML
  • Fix #1151: always save colormaps in layout XML
  • Fix #994: save/restore streaming buffer size in layout XML
  • Fix #1326: standalone time-like CSV columns kept as strings
  • Fix #1062: bump nlohmann_json to v3.13.0 for clang >= 19 compatibility
  • Fix #1324: keep internal series names aligned after prefix remap
  • Fix #967, #528: --buffer_size actually sets the value and the time slider updates on offset toggle
  • omgidl: enable /Zc:__cplusplus for MSVC to satisfy peglib's C++17 check
  • CI/build hardening: ros2-rolling typesupport, Conan/Homebrew

File truncated at 100 lines see the full file

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged plotjuggler at Robotics Stack Exchange

Package symbol

plotjuggler package from plotjuggler repo

plotjuggler

ROS Distro
melodic

Package Summary

Version 3.17.2
License MPL-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/facontidavide/PlotJuggler.git
VCS Type git
VCS Version main
Last Updated 2026-05-11
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

PlotJuggler: juggle with data

Additional Links

Maintainers

  • Davide Faconti

Authors

  • Davide Faconti

ALERT: do NOT visit plotjuggler.com

That is probably a Malware / Phishing page impersonating us.

We are taking urgent actions to brint it down.

PlotJuggler

windows ubuntu macos ros2-humble ros2-jazzy ros2-rolling Tweet

Gold Sponsor:

Greenzie Intermodalics Greenzie

PlotJuggler 3.17

PlotJuggler is a tool to visualize time series that is fast, powerful and intuitive.

Noteworthy features:

  • Simple Drag & Drop user interface.
  • Load data from file.
  • Connect to live streaming of data.
  • Save the visualization layout and configurations to reuse them later.
  • Fast OpenGL visualization.
  • Can handle thousands of timeseries and millions of data points.
  • Transform your data using a simple editor: derivative, moving average, integral, etc…
  • PlotJuggler can be easily extended using plugins.

PlotJuggler

Data sources (file and streaming)

  • Load CSV files.
  • Load ULog (PX4).
  • Subscribe to many different streaming sources: MQTT, WebSockets, ZeroMQ, UDP, etc.
  • Understand data formats such as JSON, CBOR, BSON, Message Pack, etc.
  • Well integrated with ROS: open rosbags and/or subscribe to ROS topics (both ROS1 and ROS2).
  • Supports the Lab Streaming Layer, that is used by many devices.
  • Easily add your custom data source and/or formats…

Transform and analyze your data

PlotJuggler makes it easy to visualize data but also to analyze it. You can manipulate your time series using a simple and extendable Transform Editor.

Alternatively, you may use the Custom Function Editor, which allows you to create Multi-input / Single-output functions using a scripting language based on Lua.

If you are not familiar with Lua, don’t be afraid, you won’t need more than 5 minutes to learn it ;)

Tutorials

To learn how to use PlotJuggler, check the tutorials here:

Tutorial 1 Tutorial 2 Tutorial 3

Supported plugins

Some plugins can be found in a different repository. The individual README files should include all the information needed to compile and use the plugin.

Please submit specific issues, Pull Requests and questions on the related Github repository:

If you want a simple example to learn how to write your own plugins, have a look at PlotJuggler/plotjuggler-sample-plugins

Installation

You can download the latest ready to use binaries from the Release page.

| 🐧 Linux | 🍎 macOS | 🪟 Windows | 📦 Debian | |:--------:|:--------:|:----------:|:---------:| | **AppImage** | **Installer** | **Installer** | **Packages** | | x86 / arm64 | x86 / arm64 | x64 | bookworm, trixie |

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package plotjuggler

3.17.2 (2026-05-11)

  • Rework Foxglove and PlotJuggler websocket bridge plugins to accept arbitrary websocket URLs (#1361)
  • Fix crash when saving empty/zero-byte layout XML files (#1362)
  • Add alert for plotjuggler.com phishing site

3.17.1 (2026-05-04)

  • Fix Windows installer: flatten embeddable Python next to plotjuggler.exe
  • Bundle MSVC C++ runtime DLLs in Windows installer
  • Make AppImage / Windows / Debian artifacts portable across hosts
  • Be resilient to issues with Python initialization
  • CI fixes: sanitize branch ref_name for filenames, grant contents:write for release uploads

3.17.0 (2026-04-27)

  • New plugin: ToolboxMosaico for Mosaico Flight datasets, with streaming pullTopics and per-topic download progress UI (#1340)
  • New plugin: Serial Port DataStreamer with nested-JSON support and robust port parsing (#1314)
  • New parser: OMG IDL support for ROS 2 message definitions (#1345)
  • New ToolboxCSV: rewritten CSV/Parquet export with single-file and multi-file modes, topic filter, time-gap segmentation and NaN/Null/Inf detection (replaces the legacy CSV export)
  • Function Editor: Python custom functions, library dialog, and UX refactor (red highlight on empty name, vertical splitter)
  • UDP DataStreamer: header-byte dispatch for multi-type payloads, with topic→descriptor mapping in the protobuf parser (#1144)
  • Add common statistics SISO transforms: RMS, MAV, stddev, peak-to-peak (#1325)
  • Fix CSV loading issues (#1338, addresses #850, #987, #1000)
  • Fix curve restoration when loading layout XML files (#1339)
  • dataload_ulog: support files larger than 2 GB (#1346)
  • parser_ros: emit Header fields per the schema, drop double-prefix (#1350)
  • rosx_introspection: parse bounded sequence syntax [<=N] (#1349)
  • MCAP: more resilient reading of corrupted files
  • AppImage: HiDPI scaling and theme isolation on GNOME (#1344)
  • Update Qt Advanced Docking to 4.5 and fix a Wayland issue
  • Fix tree view collisions when a curve path is also a parent node, and stale X-axis ordering / Parquet column list
  • Fix #749: wrap multi-file prefix dialog content in QScrollArea
  • Fix #464: -d flag data is no longer overwritten when a layout is also passed with -l
  • Fix #1052: segfault when a dock area is destroyed during mouse events
  • Fix #1080: vertical zoom no longer stuck at max 0.1
  • Fix #1291: use UTC when formatting epoch-based time axis labels
  • Fix #1014: deterministic attribute order in layout XML
  • Fix #1151: always save colormaps in layout XML
  • Fix #994: save/restore streaming buffer size in layout XML
  • Fix #1326: standalone time-like CSV columns kept as strings
  • Fix #1062: bump nlohmann_json to v3.13.0 for clang >= 19 compatibility
  • Fix #1324: keep internal series names aligned after prefix remap
  • Fix #967, #528: --buffer_size actually sets the value and the time slider updates on offset toggle
  • omgidl: enable /Zc:__cplusplus for MSVC to satisfy peglib's C++17 check
  • CI/build hardening: ros2-rolling typesupport, Conan/Homebrew

File truncated at 100 lines see the full file

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged plotjuggler at Robotics Stack Exchange

Package symbol

plotjuggler package from plotjuggler repo

plotjuggler

ROS Distro
noetic

Package Summary

Version 3.17.2
License MPL-2.0
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/facontidavide/PlotJuggler.git
VCS Type git
VCS Version main
Last Updated 2026-05-11
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

PlotJuggler: juggle with data

Additional Links

Maintainers

  • Davide Faconti

Authors

  • Davide Faconti

ALERT: do NOT visit plotjuggler.com

That is probably a Malware / Phishing page impersonating us.

We are taking urgent actions to brint it down.

PlotJuggler

windows ubuntu macos ros2-humble ros2-jazzy ros2-rolling Tweet

Gold Sponsor:

Greenzie Intermodalics Greenzie

PlotJuggler 3.17

PlotJuggler is a tool to visualize time series that is fast, powerful and intuitive.

Noteworthy features:

  • Simple Drag & Drop user interface.
  • Load data from file.
  • Connect to live streaming of data.
  • Save the visualization layout and configurations to reuse them later.
  • Fast OpenGL visualization.
  • Can handle thousands of timeseries and millions of data points.
  • Transform your data using a simple editor: derivative, moving average, integral, etc…
  • PlotJuggler can be easily extended using plugins.

PlotJuggler

Data sources (file and streaming)

  • Load CSV files.
  • Load ULog (PX4).
  • Subscribe to many different streaming sources: MQTT, WebSockets, ZeroMQ, UDP, etc.
  • Understand data formats such as JSON, CBOR, BSON, Message Pack, etc.
  • Well integrated with ROS: open rosbags and/or subscribe to ROS topics (both ROS1 and ROS2).
  • Supports the Lab Streaming Layer, that is used by many devices.
  • Easily add your custom data source and/or formats…

Transform and analyze your data

PlotJuggler makes it easy to visualize data but also to analyze it. You can manipulate your time series using a simple and extendable Transform Editor.

Alternatively, you may use the Custom Function Editor, which allows you to create Multi-input / Single-output functions using a scripting language based on Lua.

If you are not familiar with Lua, don’t be afraid, you won’t need more than 5 minutes to learn it ;)

Tutorials

To learn how to use PlotJuggler, check the tutorials here:

Tutorial 1 Tutorial 2 Tutorial 3

Supported plugins

Some plugins can be found in a different repository. The individual README files should include all the information needed to compile and use the plugin.

Please submit specific issues, Pull Requests and questions on the related Github repository:

If you want a simple example to learn how to write your own plugins, have a look at PlotJuggler/plotjuggler-sample-plugins

Installation

You can download the latest ready to use binaries from the Release page.

| 🐧 Linux | 🍎 macOS | 🪟 Windows | 📦 Debian | |:--------:|:--------:|:----------:|:---------:| | **AppImage** | **Installer** | **Installer** | **Packages** | | x86 / arm64 | x86 / arm64 | x64 | bookworm, trixie |

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package plotjuggler

3.17.2 (2026-05-11)

  • Rework Foxglove and PlotJuggler websocket bridge plugins to accept arbitrary websocket URLs (#1361)
  • Fix crash when saving empty/zero-byte layout XML files (#1362)
  • Add alert for plotjuggler.com phishing site

3.17.1 (2026-05-04)

  • Fix Windows installer: flatten embeddable Python next to plotjuggler.exe
  • Bundle MSVC C++ runtime DLLs in Windows installer
  • Make AppImage / Windows / Debian artifacts portable across hosts
  • Be resilient to issues with Python initialization
  • CI fixes: sanitize branch ref_name for filenames, grant contents:write for release uploads

3.17.0 (2026-04-27)

  • New plugin: ToolboxMosaico for Mosaico Flight datasets, with streaming pullTopics and per-topic download progress UI (#1340)
  • New plugin: Serial Port DataStreamer with nested-JSON support and robust port parsing (#1314)
  • New parser: OMG IDL support for ROS 2 message definitions (#1345)
  • New ToolboxCSV: rewritten CSV/Parquet export with single-file and multi-file modes, topic filter, time-gap segmentation and NaN/Null/Inf detection (replaces the legacy CSV export)
  • Function Editor: Python custom functions, library dialog, and UX refactor (red highlight on empty name, vertical splitter)
  • UDP DataStreamer: header-byte dispatch for multi-type payloads, with topic→descriptor mapping in the protobuf parser (#1144)
  • Add common statistics SISO transforms: RMS, MAV, stddev, peak-to-peak (#1325)
  • Fix CSV loading issues (#1338, addresses #850, #987, #1000)
  • Fix curve restoration when loading layout XML files (#1339)
  • dataload_ulog: support files larger than 2 GB (#1346)
  • parser_ros: emit Header fields per the schema, drop double-prefix (#1350)
  • rosx_introspection: parse bounded sequence syntax [<=N] (#1349)
  • MCAP: more resilient reading of corrupted files
  • AppImage: HiDPI scaling and theme isolation on GNOME (#1344)
  • Update Qt Advanced Docking to 4.5 and fix a Wayland issue
  • Fix tree view collisions when a curve path is also a parent node, and stale X-axis ordering / Parquet column list
  • Fix #749: wrap multi-file prefix dialog content in QScrollArea
  • Fix #464: -d flag data is no longer overwritten when a layout is also passed with -l
  • Fix #1052: segfault when a dock area is destroyed during mouse events
  • Fix #1080: vertical zoom no longer stuck at max 0.1
  • Fix #1291: use UTC when formatting epoch-based time axis labels
  • Fix #1014: deterministic attribute order in layout XML
  • Fix #1151: always save colormaps in layout XML
  • Fix #994: save/restore streaming buffer size in layout XML
  • Fix #1326: standalone time-like CSV columns kept as strings
  • Fix #1062: bump nlohmann_json to v3.13.0 for clang >= 19 compatibility
  • Fix #1324: keep internal series names aligned after prefix remap
  • Fix #967, #528: --buffer_size actually sets the value and the time slider updates on offset toggle
  • omgidl: enable /Zc:__cplusplus for MSVC to satisfy peglib's C++17 check
  • CI/build hardening: ros2-rolling typesupport, Conan/Homebrew

File truncated at 100 lines see the full file

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged plotjuggler at Robotics Stack Exchange