From b19fca1d9be319f7d7b07215139832f2b46d6385 Mon Sep 17 00:00:00 2001 From: Franck Cuny Date: Sat, 4 May 2024 13:58:58 -0700 Subject: move seqstat --- src/cli/seqstat.py | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100755 src/cli/seqstat.py (limited to 'src') diff --git a/src/cli/seqstat.py b/src/cli/seqstat.py new file mode 100755 index 0000000..a9d5e64 --- /dev/null +++ b/src/cli/seqstat.py @@ -0,0 +1,27 @@ +#!/usr/bin/env python3 + +import click + +ticks = ["▁", "▂", "▃", "▄", "▅", "▆", "▇", "█"] + + +def histogram(sequence): + min_val = min(sequence) + max_val = max(sequence) + + scale = (int(max_val - min_val) << 8) / (len(ticks) - 1) + if scale < 1: + scale = 1 + + return [ticks[int((int(i - min_val) << 8) / scale)] for i in sequence] + + +@click.command() +@click.argument('numbers', nargs=-1, type=float) +def cli(numbers): + h = histogram(numbers) + print("".join(h)) + + +if __name__ == "__main__": + cli() -- cgit 1.4.1