Files
Iliyan Angelov 306b20e24a Frontend start
2025-09-14 00:54:48 +03:00

8 lines
387 B
JavaScript

import { isBandScale } from "./isBandScale.js";
export function invertScale(scale, data, value) {
if (isBandScale(scale)) {
const dataIndex = scale.bandwidth() === 0 ? Math.floor((value - Math.min(...scale.range()) + scale.step() / 2) / scale.step()) : Math.floor((value - Math.min(...scale.range())) / scale.step());
return data[dataIndex];
}
return scale.invert(value);
}