bsmplot is a cross-platform tool to visualize time series based on Matplotlib and wxPython.
$ pip install bsmplot
To start from terminal
$ bsmplot
Add shortcut to desktop / Start Menu
$ bsmplot --init
- VCD (value change dump)
- PX4 ulog
- CSV
- Matlab (.mat)
- ZMQ subscriber. json format is supported by defaut. If corresponding package is installed, the following format is also supported
To plot the data, simply double click a signal. It will plot the signal on the current figure window (or create one if there is no figure window then plot).
You can also drag the signal to the figure window.
If the data has timestamp field (e.g., ulog), it will be used as x-axis data; otherwise (e.g., csv), the x-axis will be the index by default. And you can also set some signal as x-axis data, which will be shown in bold.
Many operations of the figure can be done via the context menu (right click), and the toolbar on top. For example, to create a subplot with shared x-axis,
To process the data, right click the signal, and select the function to run. Following functions are pre-defined
- Quaternion to Yaw/Pitch/Roll
- Radian to degree
- Degree to Radian
- Moving average
If you are familiar with python code, you can add your own functions. You basically need to define the inputs, equation, and outputs. The number of outputs must match the actual ones returned from the equation.
If the processing is too complicated, you can also export the data to shell: right click -> Export to shell (or Export to shell with timestamp if available)
Then in the shell, you can access the exported data, and run any python command.