diff --git a/tools/plotjuggler/.gitignore b/tools/plotjuggler/.gitignore new file mode 100644 index 000000000..e660fd93d --- /dev/null +++ b/tools/plotjuggler/.gitignore @@ -0,0 +1 @@ +bin/ diff --git a/tools/plotjuggler/README.md b/tools/plotjuggler/README.md new file mode 100644 index 000000000..18833e579 --- /dev/null +++ b/tools/plotjuggler/README.md @@ -0,0 +1,18 @@ +# PlotJuggler +We've extended [PlotJuggler](https://github.com/facontidavide/PlotJuggler) to plot all of your openpilot logs + +Here's our fork: https://github.com/commaai/PlotJuggler + +## Installation + +Once you've cloned openpilot, run this command inside this directory: + +`./install.sh` + +## Usage + +`./juggle.py ` + +Example: + +`./juggle.py "0982d79ebb0de295|2021-01-17--17-13-08" 0` diff --git a/tools/plotjuggler/install.sh b/tools/plotjuggler/install.sh new file mode 100755 index 000000000..59d93616e --- /dev/null +++ b/tools/plotjuggler/install.sh @@ -0,0 +1,5 @@ +#!/bin/bash + +wget https://github.com/commaai/PlotJuggler/releases/download/1.0/bin.tar.gz +tar -xf bin.tar.gz +rm bin.tar.gz diff --git a/tools/plotjuggler/juggle.py b/tools/plotjuggler/juggle.py new file mode 100755 index 000000000..ee947e712 --- /dev/null +++ b/tools/plotjuggler/juggle.py @@ -0,0 +1,23 @@ +#!/usr/bin/env python3 + +import sys +import subprocess +from tools.lib.route import Route +from tools.lib.url_file import URLFile + +def juggle_segment(route_name, segment_nr): + + r = Route(route_name) + lp = r.log_paths()[segment_nr] + + if lp is None: + print("This segment does not exist, please try a different one") + return + + uf = URLFile(lp) + + subprocess.call(f"bin/plotjuggler -d {uf.name}", shell=True) + + +if __name__ == "__main__": + juggle_segment(sys.argv[1], int(sys.argv[2]))