RosettaCodeData/Task/Sparkline-in-unicode/YAMLScript/sparkline-in-unicode.ys

15 lines
326 B
Text
Raw Permalink Normal View History

2025-08-11 18:05:26 -07:00
!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(_)))