Git Product home page Git Product logo

plotjuggler's Introduction

PlotJuggler

ROS (Kinetic / Melodic) ROS2 (Eloquent) Windows (Mingw)
CI CI CI

Join the chat at https://gitter.im/PlotJuggler/Lobby Tweet

PlotJuggler 2.8.4

QT5 based application to display time series in plots, using an intuitive "drag and drop" interface.

It can be used either to:

  • load static data from file or
  • connect to live streaming of data.

Its functionality can be easily extended through plugins.

To understand what PlotJuggler can do for you, take a look to the following video PlotJuggler on Vimeo

PlotJuggler

Supported formats

Compute calculations and transform your data

It is now possible to create custom timeseries! Simply write your own JavaScript or Lua function and apply it to one of more existing timeseries.

Many thanks to @1r0b1n0, who developed the initial version of this feature, and to our first sponsor, a robotics company that made a donation, but prefers to remain anonymous for the time being.

Watch this video to learn how to use it.

Custom timeseries

"Download and Run"

For those of you that can't wait and want to get their hands dirty, you can download these binaries:

Linux with ROS plugins: PlotJuggler-Linux-ROS-2.8.4.AppImage.

Do not forget to make it executable with the command

chmod +x ./PlotJuggler-*-x86_64.AppImage

Windows Installer: PlotJuggler_WIN_Installer-2.8.4.exe.

How to build (without ROS plugins)

Clone the repository as usual:

  git clone 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 command:

sudo apt-get -y install qtbase5-dev libqt5svg5-dev qtdeclarative5-dev qtmultimedia5-dev libqt5multimedia5-plugins

On Fedora:

sudo dnf install qt5-qtbase-devel qt5-qtsvg-devel qt5-qtdeclarative-devel qt5-qtmultimedia-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 or in /usr/local/lib/PlotJuggler/.

How to build (ROS/ROS2 users)

The easiest way to install PlotJuggler is through the command:

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

Nevertheless, if you want to compile it from source, for instance to try the very latest version on the master branch, you must build PlotJuggler using either catkin or colcon, otherwise the ROS related plugins will not be included.

Compiling with catkin_tools:

mkdir -p ws_plotjuggler/src; cd ws_plotjuggler/src
git clone https://github.com/facontidavide/PlotJuggler.git
cd ..
rosdep install --from-paths src --ignore-src --rosdistro=${ROS_DISTRO} -y
catkin build
source devel/setup.bash

You should see the following message at the beginning of the compilation step:

"PlotJuggler is being built using CATKIN. ROS plugins will be compiled"

Both the executable and the plugins will be created in ws_plotjuggler/devel/lib/plotjuggler.

To run the application, use the command:

rosrun plotjuggler PlotJuggler  

If you like PlotJuggler...

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

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

Contact me for more details.

Stargazers over time

Stargazers over time

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.