- Powerful: Ability to customize tickMethod are offered with abundant kinds of scales.
- High performance: Use different methods to cache some state of scales to improve performance.
- Fully embrace TypeScript: All code are written in TypeScript and complete type definition files are provided.
$ npm install @antv/scale
- Basic usage
import { Linear, LinearOptions } from '@antv/scale';
const options: LinearOptions = {
domain: [0, 10],
range: [0, 100],
};
const x = new Linear(options);
x.map(2); // 20
x.invert(20); // 2
x.getTicks(); // [0, 2.5, 5, 7.5, 10]
- Customize tickMethod
import { Linear } from '@antv/scale';
const x = new Linear({
domain: [0, 10],
range: [0, 100],
tickCount: 3,
tickMethod: () => [0, 5, 10],
});
x.getTicks(); // [0, 5, 10]
$ git clone git@github.com:antvis/scale.git
$ cd scale
$ npm i
$ npm t
Then send a pull request after coding.
MIT@AntV.