@antv/scale

Toolkit for mapping abstract data into visual representation.

Usage no npm install needed!

<script type="module">
  import antvScale from 'https://cdn.skypack.dev/@antv/scale';
</script>

README

@antv/scale

Toolkit for mapping abstract data into visual representation.

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]

📎 Links

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