All Projects → facontidavide → Plotjuggler

facontidavide / Plotjuggler

Licence: lgpl-3.0
The Time Series Visualization Tool that you deserve.

Programming Languages

C++
36643 projects - #6 most used programming language
c
50402 projects - #5 most used programming language
CMake
9771 projects
QMake
1090 projects
python
139335 projects - #7 most used programming language
Qt Script
14 projects

Projects that are alternatives of or similar to Plotjuggler

Uplot
📈 A small, fast chart for time series, lines, areas, ohlc & bars
Stars: ✭ 6,808 (+159.85%)
Mutual labels:  time-series, chart, plot
Django Rest Pandas
📊📈 Serves up Pandas dataframes via the Django REST Framework for use in client-side (i.e. d3.js) visualizations and offline analysis (e.g. Excel)
Stars: ✭ 1,030 (-60.69%)
Mutual labels:  csv, chart
Go Chartjs
golang library to make https://chartjs.org/ plots (this is vanilla #golang, not gopherjs)
Stars: ✭ 42 (-98.4%)
Mutual labels:  chart, plot
Highcharts Chart
Polymer Element wrapper for highcharts library. Seamlessly create various types of charts from one element.
Stars: ✭ 97 (-96.3%)
Mutual labels:  chart, plot
Clip
Create charts from the command line
Stars: ✭ 5,111 (+95.08%)
Mutual labels:  csv, chart
Androbd
Android OBD diagnostics with any ELM327 adapter
Stars: ✭ 573 (-78.13%)
Mutual labels:  mqtt, chart
Highcharts trendline
HighCharts demo of scatter plot, including a trend line
Stars: ✭ 79 (-96.98%)
Mutual labels:  chart, plot
Plotly
Plotly for Rust
Stars: ✭ 433 (-83.47%)
Mutual labels:  chart, plot
Nim Plotly
plotting library for nim-lang
Stars: ✭ 121 (-95.38%)
Mutual labels:  chart, plot
Rosbag to csv
Converter from ros bag to csv
Stars: ✭ 128 (-95.11%)
Mutual labels:  ros, csv
Asciigraph
Go package to make lightweight ASCII line graph ╭┈╯ in command line apps with no other dependencies.
Stars: ✭ 1,805 (-31.11%)
Mutual labels:  chart, plot
Ttyplot
a realtime plotting utility for terminal/console with data input from stdin
Stars: ✭ 532 (-79.69%)
Mutual labels:  chart, plot
Finviz
Unofficial API for finviz.com
Stars: ✭ 493 (-81.18%)
Mutual labels:  csv, chart
Aachartkit Swift
📈📊📱💻🖥️An elegant modern declarative data visualization chart framework for iOS, iPadOS and macOS. Extremely powerful, supports line, spline, area, areaspline, column, bar, pie, scatter, angular gauges, arearange, areasplinerange, columnrange, bubble, box plot, error bars, funnel, waterfall and polar chart types. 极其精美而又强大的跨平台数据可视化图表框架,支持柱状图、条形图、…
Stars: ✭ 1,962 (-25.11%)
Mutual labels:  chart, plot
Px4 Autopilot
PX4 Autopilot Software
Stars: ✭ 5,090 (+94.27%)
Mutual labels:  ros, px4
Asciichart
Nice-looking lightweight console ASCII line charts ╭┈╯ for NodeJS, browsers and terminal, no dependencies
Stars: ✭ 1,107 (-57.75%)
Mutual labels:  chart, plot
Plotlib
Data plotting library for Rust
Stars: ✭ 308 (-88.24%)
Mutual labels:  chart, plot
Aachartcore Kotlin
📈📊⛰⛰⛰An elegant modern declarative data visualization chart framework for Android . Extremely powerful, supports line, spline, area, areaspline, column, bar, pie, scatter, angular gauges, arearange, areasplinerange, columnrange, bubble, box plot, error bars, funnel, waterfall and polar chart types.极其精美而又强大的 Android 数据可视化图表框架,支持柱状图、条形图、折线图、曲线图、折线填充图、曲线填充图、气泡图、扇形图、环形图、散点图、雷达图、混合图等各种类型的多达几十种的信息图图表,完全满足工作所需.
Stars: ✭ 332 (-87.33%)
Mutual labels:  chart, plot
Just Dashboard
📊 📋 Dashboards using YAML or JSON files
Stars: ✭ 1,511 (-42.33%)
Mutual labels:  csv, chart
Weewx Belchertown
A clean and modern weewx skin with real time streaming updates, forecast data and interactive charts. View it in action at BelchertownWeather.com
Stars: ✭ 131 (-95%)
Mutual labels:  mqtt, chart

PlotJuggler

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

PlotJuggler 3.3

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 ;)

Tutorials

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

Tutorial 1 Tutorial 2 Tutorial 3

Supported plugins

Some plugin 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

Binary installers (with basic plugins)

Linux AppImage (compatible with Ubuntu 18.04 or later: PlotJuggler-3.2.0-x86_64.AppImage

Windows Installer: PlotJuggler-Windows-3.1.1-installer

For ROS User

Install the debian packages using:

 sudo apt install ros-<distro>-plotjuggler-ros

Alternatively, you may download the Snaps version that include the ROS1 plugins:

Get it from the Snap Store

How to build

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 the command:

sudo apt -y install qtbase5-dev libqt5svg5-dev libqt5websockets5-dev libqt5opengl5-dev libqt5x11extras5-dev libprotoc-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

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

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].