
시간 가중 지수 이동 평균(TWEMA) 스무딩 (기본값)
y 값의 개수)를 고려합니다. 이를 통해 서로 다른 특성을 가진 여러 선을 동시에 표시할 때도 일관된 스무딩을 적용할 수 있습니다.
다음은 내부적으로 어떻게 동작하는지 보여 주는 예제 코드입니다.

가우시안 평활화

이동 평균 스무딩

지수 이동 평균(EMA) 스무딩
- 샘플링
- 그룹화
- 식(Expressions)
- 단조가 아닌 x-축
- 시간 기반 x-축

원본 데이터 숨기기

선 그래프에서 평활화를 사용해 잡음이 많은 데이터의 추세를 파악할 수 있습니다.

y 값의 개수)를 고려합니다. 이를 통해 서로 다른 특성을 가진 여러 선을 동시에 표시할 때도 일관된 스무딩을 적용할 수 있습니다.
다음은 내부적으로 어떻게 동작하는지 보여 주는 예제 코드입니다.
const smoothingWeight = Math.min(Math.sqrt(smoothingParam || 0), 0.999);
let lastY = yValues.length > 0 ? 0 : NaN;
let debiasWeight = 0;
return yValues.map((yPoint, index) => {
const prevX = index > 0 ? index - 1 : 0;
// VIEWPORT_SCALE는 결과를 차트의 x축 범위에 맞게 조정합니다
const changeInX =
((xValues[index] - xValues[prevX]) / rangeOfX) * VIEWPORT_SCALE;
const smoothingWeightAdj = Math.pow(smoothingWeight, changeInX);
lastY = lastY * smoothingWeightAdj + yPoint;
debiasWeight = debiasWeight * smoothingWeightAdj + 1;
return lastY / debiasWeight;
});



data.forEach(d => {
const nextVal = d;
last = last * smoothingWeight + (1 - smoothingWeight) * nextVal;
numAccum++;
debiasWeight = 1.0 - Math.pow(smoothingWeight, numAccum);
smoothedData.push(last / debiasWeight);

