[javascript] Chartist에서 빈 값 또는 결측값 처리하기

데이터 시각화 라이브러리인 Chartist를 사용하다 보면 때때로 빈 값이나 결측값이 포함된 데이터를 다루어야 할 때가 있습니다. 이런 경우를 처리하기 위해 Chartist에서는 몇 가지 옵션을 제공합니다. 이번 블로그 포스트에서는 Chartist에서 빈 값 또는 결측값을 처리하는 방법에 대해 자세히 알아보겠습니다.

1. Null 값을 다른 값으로 대체하기

데이터셋에서 빈 값이나 결측값을 다른 값으로 대체하여 처리할 수 있습니다. Chartist에서는 Null 값을 지정된 값으로 대체하기 위해 axisXaxisYvalueFunction 옵션을 사용할 수 있습니다.

예를 들어, x축 값으로 빈 값이나 결측값이 포함된 경우 다음과 같이 valueFunction을 사용하여 해당 값들을 0으로 대체할 수 있습니다.

new Chartist.Line('.ct-chart', {
  labels: [1, 2, 3, 4, 5, 6, 7, 8],
  series: [
    {name: 'series-1', data: [1, null, null, 4, 5, null, 7, 8]}
  ]
}, {
  axisX: {
    valueFunction: function(value) {
      return value === null ? 0 : value;
    }
  }
});

위의 예시에서는 라인 그래프를 생성하고, data 배열의 빈 값과 결측값을 0으로 대체하고 있습니다.

2. Null 값을 건너뛰기

다른 옵션으로는 Null 값을 건너뛰고 라인 그래프를 그리는 것입니다. axisXshowGrid 옵션 내에서 extendEmptyValues 속성을 false로 설정하면 Null 값을 건너뛸 수 있습니다.

new Chartist.Line('.ct-chart', {
  labels: [1, 2, 3, 4, 5, 6, 7, 8],
  series: [
    {name: 'series-1', data: [1, null, null, 4, 5, null, 7, 8]}
  ]
}, {
  axisX: {
    showGrid: {
      extendEmptyValues: false
    }
  }
});

위의 예시에서는 라인 그래프의 x축 라벨을 설정하고, data 배열에서 빈 값과 결측값을 건너뛰고 그래프를 그리고 있습니다.

3. Missing Data 표시하기

빈 값 또는 결측값을 처리하는 또 다른 방법은 그래프에서 해당 값이 누락되었음을 명시적으로 보여주는 것입니다. 이를 위해 Chartist는 seriesMissing 옵션을 제공합니다.

new Chartist.Line('.ct-chart', {
  labels: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri'],
  series: [
    [5, 2, null, 2, 8]
  ]
}, {
  seriesMissing: true
});

위의 예시에서는 매주 수요일의 데이터가 빠져있음을 나타내기 위해 null 값을 사용하고 있습니다. seriesMissing 속성이 true로 설정되어 있으므로 해당 값이 누락되었음을 그래프에서 시각적으로 보여줍니다.

이렇게 Chartist에서는 빈 값 또는 결측값을 처리하기 위한 다양한 옵션을 제공합니다. 데이터셋에 따라 적절한 방법을 선택하여 시각화 결과를 유연하게 조정할 수 있습니다.

참고 자료