Files
openclaw 0a5f6a8047 Initial commit: Lan-manager project code
- Go backend (server/)
- Frontend (web/, server/static/)
- Database and deployment files
- Scripts and docs

Co-Authored-By: 狸花猫/Claude-Qwen3.6-Plus 🐾
2026-04-20 00:52:58 +08:00

43 lines
1.3 KiB
JavaScript

import { filter, isNil, isNumber, last } from '@antv/util';
/**
* 计算分类 ticks
* @param cfg 度量的配置项
* @returns 计算后的 ticks
*/
export default function calculateCatTicks(cfg) {
var values = cfg.values, tickInterval = cfg.tickInterval, tickCount = cfg.tickCount, showLast = cfg.showLast;
if (isNumber(tickInterval)) {
var ticks_1 = filter(values, function (__, i) { return i % tickInterval === 0; });
var lastValue = last(values);
if (showLast && last(ticks_1) !== lastValue) {
ticks_1.push(lastValue);
}
return ticks_1;
}
var len = values.length;
var min = cfg.min, max = cfg.max;
if (isNil(min)) {
min = 0;
}
if (isNil(max)) {
max = values.length - 1;
}
if (!isNumber(tickCount) || tickCount >= len)
return values.slice(min, max + 1);
if (tickCount <= 0 || max <= 0)
return [];
var interval = tickCount === 1 ? len : Math.floor(len / (tickCount - 1));
var ticks = [];
var idx = min;
for (var i = 0; i < tickCount; i++) {
if (idx >= max)
break;
idx = Math.min(min + i * interval, max);
if (i === tickCount - 1 && showLast)
ticks.push(values[max]);
else
ticks.push(values[idx]);
}
return ticks;
}
//# sourceMappingURL=cat.js.map