RosettaCodeData/Task/Sparkline-in-unicode/YAMLScript/sparkline-in-unicode.ys
2025-08-11 18:05:26 -07:00

14 lines
326 B
Text

!YS-v0
defn main(input):
each line input:lines:
say: line:words.map(N):sparkline
defn sparkline(nums):
sparks =: '▁▂▃▄▅▆▇█'
high =: max(nums*)
low =: min(nums*)
spread =: high - low
quantize =:
\(round(sparks.#.-- * ((_ - low) / spread)))
apply str: nums.map(\(nth sparks quantize(_)))