JavaScript 实现 charts 缩放比例尺
/*
* value: 需要转化的值
* sourceMinMaxArr:源数据中的最大值与最小值,例如:[最小值,最大值]
* viewMinMaxArr:可视区最适范围最大值与最小值,例如:[最小值,最大值]
*/
const scale = (value: number, sourceMinMaxArr:number[], viewMinMaxArr:number[]) => {
let percentage = (viewMinMaxArr[1] - viewMinMaxArr[0]) / (sourceMinMaxArr[1] - sourceMinMaxArr[0]);
return viewMinMaxArr[1] + (value - sourceMinMaxArr[1]) * percentage;
};
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
调用示例:
let sourceArr = [8, 2, 9, 4, 12];
let newArr = sourceArr.map((item: number) => {
return scale(item, [2, 12], [12, 20]);
});
console.log(newArr);
1
2
3
4
5
2
3
4
5
上次更新: 2024/01/30, 00:35:17
- 01
- linux 在没有 sudo 权限下安装 Ollama 框架12-23
- 02
- Express 与 vue3 使用 sse 实现消息推送(长连接)12-20