@antv/f2
Version:
Charts for mobile visualization.
33 lines (32 loc) • 1.13 kB
JavaScript
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = linear;
var _util = require("@antv/util");
var _extended = _interopRequireDefault(require("../util/extended"));
var _interval = _interopRequireDefault(require("../util/interval"));
var _strictLimit = _interopRequireDefault(require("../util/strict-limit"));
/**
* 计算线性的 ticks,使用 wilkinson extended 方法
* @param cfg 度量的配置项
* @returns 计算后的 ticks
*/
function linear(cfg) {
var min = cfg.min,
max = cfg.max,
tickCount = cfg.tickCount,
nice = cfg.nice,
tickInterval = cfg.tickInterval,
minLimit = cfg.minLimit,
maxLimit = cfg.maxLimit;
var ticks = (0, _extended.default)(min, max, tickCount, nice).ticks;
if (!(0, _util.isNil)(minLimit) || !(0, _util.isNil)(maxLimit)) {
return (0, _strictLimit.default)(cfg, (0, _util.head)(ticks), (0, _util.last)(ticks));
}
if (tickInterval) {
return (0, _interval.default)(min, max, tickInterval).ticks;
}
return ticks;
}
;