From 51d056a3de9a809c60c645497ec7f4073b8b6108 Mon Sep 17 00:00:00 2001 From: Serpent7776 Date: Wed, 13 Mar 2024 21:33:15 +0100 Subject: [PATCH] Add --sort-by option --- scripts/plot_whisker.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/scripts/plot_whisker.py b/scripts/plot_whisker.py index ef3459792..2dbd0028a 100755 --- a/scripts/plot_whisker.py +++ b/scripts/plot_whisker.py @@ -15,6 +15,7 @@ parser = argparse.ArgumentParser(description=__doc__) parser.add_argument("file", help="JSON file with benchmark results") parser.add_argument("--title", help="Plot Title") +parser.add_argument("--sort-by", choices=['median'], help="Sort method") parser.add_argument( "--labels", help="Comma-separated list of entries for the plot legend" ) @@ -32,11 +33,12 @@ else: labels = [b["command"] for b in results] times = [b["times"] for b in results] -medians = [b["median"] for b in results] -indices = sorted(range(len(labels)), key=lambda k: medians[k]) -labels = [labels[i] for i in indices] -times = [times[i] for i in indices] +if args.sort_by == 'median': + medians = [b["median"] for b in results] + indices = sorted(range(len(labels)), key=lambda k: medians[k]) + labels = [labels[i] for i in indices] + times = [times[i] for i in indices] plt.figure(figsize=(10, 6), constrained_layout=True) boxplot = plt.boxplot(times, vert=True, patch_artist=True)