trend-steps
reduces math series to a square curve of its trend steps
Reduce a math series to a square curve like
+3 _ |+2 | | |+1 _| | _|0 _ | |__ __|-1 |_ |-2 |_ |-3 |_|
Use it as an array reducer.
const toTrendSteps = const input = 12 14 15 16 15 14 14 12 const output = input
In this case output will be
value: 12 level: 0 value: 14 level: 2 value: 15 level: 3 value: 16 level: 4 value: 15 level: -1 value: 14 level: -2 value: 14 level: 0 value: 12 level: -2
Note that the minimum delta between two consecutive entries is 0.1
, and it is used as unit.
In fact starting from first to second element, the level is increased by 2 units.
It accepts an options parameter, which defaults to { tolerance: 0.001 }
, where
tolerance is the criteria used to compare floats to check if they are equal. For instance, to decrease tolerance, do
const output = input