Welcome to polt’s documentation!

polt is a Python package for live data visualization via matplotlib. It includes a Command-Line Interface designed to be a universal tool to plot data from various sources simulataneously. Check out the Data Flow for an overview of how data is gathered, processed and displayed.

Note

polt is not built for speed! It is intended to be easy to use and quick to setup. If you need to display fast (i.e. rates higher than hundreds of Hz) data in real time, you might be better off with PyQtGraph.

polt in action

You can use the Command-Line Interface to quickly visualize numbers from a process’ output:

polt generate -c walk --max-rate 20 | polt live
_images/polt-live-random-walk.png

But the Command-Line Interface can do more like reading data in different formate from multiple sources and splitting the data into subplots:

polt generate \
     -c "sensor1_temperature_celsius=uniform(20,25)" \
     -c "sensor1_pressure_hPa=uniform(990,1020)" \
     -c "sensor2_pressure_hPa=uniform(990,1020)" \
     -c "sensor3_humidity_percent=uniform(10,90)" \
     -c "sensor3_temperature_kelvin=uniform(0,300)" \
     --max-rate 5 \
     | polt \
         add-source -p csv -o name=Data -o header-regex=key-quantity-unit \
         live -o extrapolate=yes -o subplots-for=unit
_images/polt-live-5-random-sensors-by-unit.png

Check the Command-Line Interface documentation to learn how to use it properly.

Indices and tables