npm.io
0.5.2 • Published 10 months ago

@antv/scale

Licence
MIT
Version
0.5.2
Deps
3
Size
529 kB
Vulns
0
Weekly
0
Stars
60

@antv/scale

Toolkit for mapping abstract data into visual representation. Living Demo · 中文文档

scale mapping

Build Status Coverage Status npm Version npm Download npm License

Features

  • 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.

scale examples

Installation

$ npm install @antv/scale

Getting Started

  • 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]

Contribution

$ git clone git@github.com:antvis/scale.git

$ cd scale

$ npm i

$ npm t

Then send a pull request after coding.

License

MIT@AntV.

Keywords