UNPKG

1.17 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3exports.getNormalizedValue = void 0;
4var stat_1 = require("./stat");
5/**
6 * parse the value position
7 * @param val
8 * @param scale
9 */
10function getNormalizedValue(val, scale) {
11 if (!scale) {
12 return null;
13 }
14 var scaled;
15 switch (val) {
16 case 'start':
17 return 0;
18 case 'end':
19 return 1;
20 case 'median': {
21 scaled = scale.isCategory ? stat_1.getMedian(scale.values.map(function (_, idx) { return idx; })) : stat_1.getMedian(scale.values);
22 break;
23 }
24 case 'mean': {
25 scaled = scale.isCategory ? (scale.values.length - 1) / 2 : stat_1.getMean(scale.values);
26 break;
27 }
28 case 'min':
29 scaled = scale.isCategory ? 0 : scale[val];
30 break;
31 case 'max':
32 scaled = scale.isCategory ? scale.values.length - 1 : scale[val];
33 break;
34 default:
35 scaled = val;
36 break;
37 }
38 return scale.scale(scaled);
39}
40exports.getNormalizedValue = getNormalizedValue;
41//# sourceMappingURL=annotation.js.map
\No newline at end of file