scale-helper-functions v3.0.0
scale-helper-functions
Compendium of helpers to create scales
Installation
Using npm, npm i scale-helper-functions.
Using yarn, yarn add scale-helper-functions.
Usage
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 50In 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 brownTable of contents
Type aliases
Functions
- createLinearInterpolator
- createLinearScale
- createLogScale
- createOpacityScale
- createOrdinalScale
- createQuantileScale
- createQuantizeScale
- getLinearDomainRange
Type aliases
OrdinalScaleFunction
Ƭ OrdinalScaleFunction: (s: string) => string
Type declaration:
▸ (s: string): string
Parameters:
| Name | Type |
|---|---|
s | string |
Returns: string
Defined in: modules/types.ts:3
ScaleFunction
Ƭ ScaleFunction: (n: number) => number | string
Type declaration:
▸ (n: number): number | string
Parameters:
| Name | Type |
|---|---|
n | number |
Returns: number | string
Defined in: modules/types.ts:1
Functions
createLinearInterpolator
▸ createLinearInterpolator(domain: number[]): ScaleFunction
Function that given a domain, returns a scale that will trasform a number to a value between 0 and 1
Parameters:
| Name | Type |
|---|---|
domain | number[] |
Returns: ScaleFunction
Defined in: modules/interpolation.ts:9
createLinearScale
▸ createLinearScale(domain: number[], range: Range): ScaleFunction
Creates a linear scale
Parameters:
| Name | Type | Description |
|---|---|---|
domain | number[] | |
range | Range | Desired resulting values of scaling |
Returns: ScaleFunction
The scale function
Defined in: modules/scales.ts:13
createLogScale
▸ createLogScale(domain: number[], range: Range, base?: number): ScaleFunction
Creates a log scale
Parameters:
| 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
▸ 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
Parameters:
| Name | Type |
|---|---|
domain | number[] |
Returns: ScaleFunction
The scale function
Defined in: modules/scales.ts:77
createOrdinalScale
▸ createOrdinalScale(domain: string[], range: string[]): OrdinalScaleFunction
Returns an ordinal scale Discrete input and discrete output
Parameters:
| 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
▸ 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:
Parameters:
| 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
▸ 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.
Parameters:
| Name | Type | Description |
|---|---|---|
domain | number[] | |
range | Range | Desired resulting values of scaling |
Returns: ScaleFunction
The scale function
Defined in: modules/scales.ts:53
getLinearDomainRange
▸ getLinearDomainRange(domain: number[], segmentsAmount: number): number[]
Gets a domain of N elements from a domain with less length
export
Parameters:
| 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