Compendium of helpers to create scales
Using npm, npm i scale-helper-functions
.
Using yarn, yarn add scale-helper-functions
.
Using import
import {createLinearScale} from 'scale-helper-functions';
const domain = [0, 10];
const range = [0, 100];
const scale = createLinearScale(domain, range);
const transformed = scale(5); // transformed is 50
In a CommonJS environment
const {createOrdinalScale} = require('scale-helper-functions');
const animals = ['cat', 'dog'];
const range = ['white', 'brown'];
const scale = createOrdinalScale(animals, range);
const color = scale('dog'); // color is brown
- createLinearInterpolator
- createLinearScale
- createLogScale
- createOpacityScale
- createOrdinalScale
- createQuantileScale
- createQuantizeScale
- getLinearDomainRange
Ƭ OrdinalScaleFunction: (s
: string) => string
▸ (s
: string): string
Name | Type |
---|---|
s |
string |
Returns: string
Defined in: modules/types.ts:3
Ƭ ScaleFunction: (n
: number) => number | string
▸ (n
: number): number | string
Name | Type |
---|---|
n |
number |
Returns: number | string
Defined in: modules/types.ts:1
▸ createLinearInterpolator(domain
: number[]): ScaleFunction
Function that given a domain, returns a scale that will trasform a number to a value between 0 and 1
Name | Type |
---|---|
domain |
number[] |
Returns: ScaleFunction
Defined in: modules/interpolation.ts:9
▸ createLinearScale(domain
: number[], range
: Range): ScaleFunction
Creates a linear scale
Name | Type | Description |
---|---|---|
domain |
number[] | |
range |
Range | Desired resulting values of scaling |
Returns: ScaleFunction
The scale function
Defined in: modules/scales.ts:13
▸ createLogScale(domain
: number[], range
: Range, base?
: number): ScaleFunction
Creates a log scale
Name | Type | Description |
---|---|---|
domain |
number[] | |
range |
Range | Desired resulting values of scaling |
base? |
number | - |
Returns: ScaleFunction
The scale function
Defined in: modules/scales.ts:25
▸ createOpacityScale(domain
: number[]): ScaleFunction
Returns, given a domain, a function that will convert a number to another one between 0 and 255 Useful for calculating opacity values for RGBA strings
export
Name | Type |
---|---|
domain |
number[] |
Returns: ScaleFunction
The scale function
Defined in: modules/scales.ts:77
▸ createOrdinalScale(domain
: string[], range
: string[]): OrdinalScaleFunction
Returns an ordinal scale Discrete input and discrete output
Name | Type | Description |
---|---|---|
domain |
string[] | Discrete list of values ['A', 'B', 'C'] |
range |
string[] | Desired resulting values of scaling |
Returns: OrdinalScaleFunction
The scale function
Defined in: modules/scales.ts:65
▸ createQuantileScale(dataset
: number[], range
: Range): ScaleFunction
Returns a quantile scale based on dataset Maps continuous numeric input to discrete values. The domain is defined by an array of numbers:
Name | Type | Description |
---|---|---|
dataset |
number[] | Full dataset to take into account |
range |
Range | Desired resulting values of scaling |
Returns: ScaleFunction
The scale function
Defined in: modules/scales.ts:41
▸ createQuantizeScale(domain
: number[], range
: Range): ScaleFunction
Returns a quantized scale based on dataset extent Accepts continuous input and outputs a number of discrete quantities defined by the range.
Name | Type | Description |
---|---|---|
domain |
number[] | |
range |
Range | Desired resulting values of scaling |
Returns: ScaleFunction
The scale function
Defined in: modules/scales.ts:53
▸ getLinearDomainRange(domain
: number[], segmentsAmount
: number): number[]
Gets a domain of N elements from a domain with less length
export
Name | Type | Description |
---|---|---|
domain |
number[] | The existing domain |
segmentsAmount |
number | The desired length for the linear domain |
Returns: number[]
The resulting domain
Defined in: modules/helpers.ts:9