Sha256: f76d458ebd814d5e86f535814559aa5de9f7cd4ff94f0eb3bff9509b41575afa

Contents?: true

Size: 402 Bytes

Versions: 1

Compression:

Stored size: 402 Bytes

Contents

module Sparkr
  class Sparkline
    TICKS = %w(▁ ▂ ▃ ▄ ▅ ▆ ▇ █)

    def initialize(_numbers)
      numbers = _numbers.map(&:to_i)
      step_height = (numbers.max - numbers.min) / (TICKS.size - 1).to_f

      @ticks = numbers.map do |n|
        index = ((n - numbers.min) / step_height).to_i
        TICKS[index]
      end
    end

    def to_s
      @ticks.join('')
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
sparkr-0.1.0 lib/sparkr/sparkline.rb