Documentation / @finchart/core / Scale
Interface: Scale
Defined in: packages/core/src/scale/types.ts:5
데이터 도메인 ↔ 화면 좌표의 단방향 매핑. pan/zoom에서 도메인이 계속 바뀌므로 가변(mutable)이다. 잘못된 입력은 Result가 아니라 throw로 알린다.
Methods
expand()?
optionalexpand(range,ratio,hints?): [number,number]
Defined in: packages/core/src/scale/types.ts:37
데이터 구간에 자기 산수로 여유를 준다. 생략하면 선형 가산([min - span·ratio, max + span·ratio])을 쓴다 — 기본 산수로 충분한 스케일은 아무것도 안 적으면 되고, 다른 기하를 가진 스케일만 자기 것을 낸다.
로그 축이 이 자리를 요구한 실소비자다 — 가산 여유는 min이 작을수록 아래로 더 많이 빼서, 구간 폭이 넓은 데이터에서는 하한이 0을 넘어가 LogScale.setDomain이 거절한다.
ratio는 구간 폭에 대한 비율이다 — 무엇의 폭인지는 스케일이 정한다 (선형은 값의 폭, 로그는 로그 공간의 폭).
Parameters
range
readonly [number, number]
ratio
number
hints?
Returns
[number, number]
getDomain()
getDomain(): [
number,number]
Defined in: packages/core/src/scale/types.ts:7
데이터 도메인 [min, max]
Returns
[number, number]
getRange()
getRange(): [
number,number]
Defined in: packages/core/src/scale/types.ts:15
화면 범위 [start, end] (px).
start > end인 역방향도 허용한다. 화면 y는 아래로 증가하므로 y축은 [bottom, top]으로 설정해 큰 값이 위에 오게 만든다 — 이 반전을 스케일이 들고 있어야 차트와 축이 같은 좌표를 본다.
Returns
[number, number]
invert()
invert(
screenValue):number
Defined in: packages/core/src/scale/types.ts:23
화면 좌표 → 데이터 값
Parameters
screenValue
number
Returns
number
scale()
scale(
value):number
Defined in: packages/core/src/scale/types.ts:21
데이터 값 → 화면 좌표
Parameters
value
number
Returns
number
setDomain()
setDomain(
min,max):void
Defined in: packages/core/src/scale/types.ts:17
Parameters
min
number
max
number
Returns
void
setRange()
setRange(
min,max):void
Defined in: packages/core/src/scale/types.ts:18
Parameters
min
number
max
number
Returns
void