Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 400,000 packages pre-installed, including scale-number with all npm packages installed. Try it out:

var scaleNumber = require("scale-number")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

scale-number v0.0.4

Scale a number to a different range of numbers.

Scale number

Let's you map a number from a range to another.

js-standard-style Build Status

Current status: Alpha, API might change until 1.0.0


createLinearScale(fromRange, toRange)

Returns a scaling function from an input range to an output range.

Ranges are expressed with arrays.

var scaleNumber = require('scale-numbers')
var scale = scaleNumber.createLinearScale([10, 20], [100, 200])

var number = scale(15)
console.log(number) // 150

If the value is out of the entry range, it will be mapped to the lowest or greatest value. (this behaviour might be available as an option later)

var scale = scaleNumber.createLinearScale([10, 20], [100, 200])

var number = scale(5)
console.log(number) // 100


This project gets its inspiration from d3 scale.

I needed this functionality as stand alone.



  • linear scale


  • other type of scales and options like logarithmic, discrete, rounded, etc.


RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free