From 881ba5e7a640df51c5e156d8adee505352c692fb Mon Sep 17 00:00:00 2001 From: Darren Schroeder <343840+fdncred@users.noreply.github.com> Date: Sat, 15 Jan 2022 18:22:42 -0600 Subject: [PATCH] port spark --- engine-q/fun/spark.nu | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 engine-q/fun/spark.nu diff --git a/engine-q/fun/spark.nu b/engine-q/fun/spark.nu new file mode 100644 index 0000000..bec01e5 --- /dev/null +++ b/engine-q/fun/spark.nu @@ -0,0 +1,23 @@ +let TICKS = ([(char -u "2581") + (char -u "2582") + (char -u "2583") + (char -u "2584") + (char -u "2585") + (char -u "2586") + (char -u "2587") + (char -u "2588")]) + +# send an array into spark and get a sparkline out +# let v = [2, 250, 670, 890, 2, 430, 11, 908, 123, 57] +# > spark $v +# ▁▂▆▇▁▄▁█▁▁ + +def spark [v: any] { + let min = ($v | math min) + let max = ($v | math max) + let scale = (($max - $min) / 7.) + for e in $v { + let i = (($e - $min) / $scale | into int) + $"($TICKS | get $i)" + } | str collect +} \ No newline at end of file