scale-helper-functions
v3.0.0
Published
Helper to create scales
Downloads
1,121
Readme
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 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
Table 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