Need help with PlotJuggler?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

Global Rank
#14,734
Topics of expertise
visuali...
plot
velodyn...
lidar
qt5
dataflo...
px4
pcl
Location
Barcelona
2.2K Stars 259 Forks GNU Lesser General Public License v3.0 1.7K Commits 32 Opened issues

Description

The Time Series Visualization Tool that you deserve.

Services available

!
?

Need anything else?

Contributors list

# 14,734
Shell
visuali...
Lua
Qt
1199 commits
# 218,495
plot
C++
Shell
Android
9 commits
# 65,790
Shell
TeX
stereo-...
imu
8 commits
# 174,671
C
Shell
optimal...
path-pl...
5 commits
# 305,896
Shell
px4
C
visuali...
3 commits
# 80,994
C++
Shell
Arduino
bundle-...
3 commits
# 224,960
C++
Linux
sony
Docker
2 commits
# 103,141
F#
OpenCV
advent-...
advent-...
2 commits
# 347,715
C
Shell
calibra...
Lua
2 commits
# 356,641
px4
C++
visuali...
Lua
2 commits
# 356,300
px4
C++
visuali...
Lua
2 commits
# 294,619
px4
C++
mac
Lua
2 commits
# 156,884
Shell
MATLAB
Jupyter...
Lua
2 commits
# 160,871
crowdso...
Shell
jitsi
Lua
1 commit
# 135,709
gitlab
travis
Lua
optimal...
1 commit
# 422,161
px4
C++
visuali...
Lua
1 commit
# 422,484
px4
C++
visuali...
Lua
1 commit
# 417,652
px4
C
Shell
visuali...
1 commit
# 417,622
px4
C++
visuali...
Lua
1 commit
# 21,969
ant-des...
render-...
formik
Laravel
1 commit

PlotJuggler

CI CI Join the chat at https://gitter.im/PlotJuggler/Lobby Tweet Gold Sponsor: Greenzie

PlotJuggler 3.1

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 re-use 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.
  • Understands 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, that 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 ;)

Just "Download and Run"

On Linux, the simplest way to install PlotJuggler is through snaps:

Get it from the Snap Store

Windows Installer: PlotJuggler-3.1-WinInstaller.exe

How to build

Clone the repository as usual:

git clone --recurse-submodules https://github.com/facontidavide/PlotJuggler.git

The only binary dependency that you need installed in your system is Qt5. On Ubuntu, the debians can be installed with the the command:

sudo apt -y install qtbase5-dev libqt5svg5-dev libqt5websockets5-dev libqt5opengl5-dev libqt5x11extras5-dev

On Fedora:

sudo dnf install qt5-qtbase-devel qt5-qtsvg-devel qt5-websockets-devel qt5-qtopendl-devel qt5-qtx11extras-devel

Then compile using cmake (qmake is NOT supported):

 mkdir build; cd build
 cmake ..
 make
 sudo make install

Note: the plugins need to be installed in the same folder of the executable.

Note for ROS users

To install PlotJuggler, just type:

sudo apt install ros-${ROS_DISTRO}-plotjuggler-ros

I added a fix that will be available in the next release.

To launch PlotJuggler on ROS, use the command:

  rosrun plotjuggler plotjuggler

or, if are using ROS2:

   ros2 run plotjuggler plotjuggler

Since version 3.x, ROS plugins have been moved to a separate repository:

https://github.com/PlotJuggler/plotjuggler-ros-plugins

Refer to the instructions in the this repository if you want to compile PJ and its ROS plugins from source.

If you like PlotJuggler, support it.

PlotJuggler required a lot of work to be developed; my goal is to build the most intuitive and powerfull tool to visualize data and timeseries.

If you find PlotJuggler useful, consider making a donation on PayPal or become a Github Sponsor.

If you use PlotJuggler at work, your company can support the development of those specific features they need.

Contact me for more details.

Stargazers

Stargazers over time

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.