가이드
릴리즈
v1.5.1

v1.5.1

✨ 기능 개선

log 축 (opens in a new tab) 값 처리 변경 [🚨주의]

  • 기존: 0 이하의 값이 로그 위치를 만들지 못해 좌표가 깨지고, minValue (opens in a new tab)·maxValue (opens in a new tab)를 지정하면 축 범위가 무너졌습니다.
  • 변경: 0 이하의 값은 값이 없는 것으로 다룹니다. 해당 포인트는 표시되지 않고 선은 그 자리에서 끊깁니다. x축이 log 축이면 x 값도 같습니다.
  • 변경: minValue, maxValue, strictMin, strictMax와 break의 from·to는 데이터 값으로 지정합니다. tick의 baseValue, stepInterval, steps는 이전과 같이 로그를 적용한 값으로 지정합니다.
yAxis: {
  type: 'log',
  minValue: 1,        // 데이터 값
  maxValue: 10000
}

othersGroup (opens in a new tab) 묶음 기준 정리 [🚨주의]

  • 기존: minValue (opens in a new tab) 미만 조각이 data 순서에 따라 기타에 들어가지 않거나 중복으로 표시되었고, maxCount (opens in a new tab)에 기타 조각이 포함되지 않았습니다.
  • 변경: minValue 미만 조각은 data 위치와 관계없이 모두 기타로 묶입니다. 한 조각은 표시 조각과 기타 중 한 곳에만 들어가므로 표시 조각들의 합이 원본 합과 같습니다.
  • 변경: maxCount는 기타 조각을 포함한 개수입니다. maxCount: 1이면 첫 조각과 기타가 표시됩니다.
  • 같은 데이터라도 기타 조각의 값이 이전과 달라질 수 있습니다. Pie, Funnel, Pictorial, WordCloud 시리즈에 공통으로 적용됩니다.

포인트 클릭과 드래그 구분

  • 기존: 포인트를 누른 채 끌어서 놓아도(줌 드래그 등) onPointClick이 호출되었습니다.
  • 변경: 끌어서 놓은 경우는 클릭으로 보지 않아 onPointClick이 호출되지 않습니다.

➕ 기능 추가

selectable (opens in a new tab) 데이터포인트 선택

  • Bar, Pie 계열 시리즈에서 데이터포인트를 클릭해 선택할 수 있는 selectable 옵션이 추가되었습니다. (@default false)
  • 선택 상태는 포인터가 벗어나도 유지되며 hover와 독립적으로 동작합니다.
    • 클릭: 기존 선택을 해제하고 하나만 선택합니다. 단독 선택된 포인트를 다시 클릭하면 해제됩니다.
    • Shift · Ctrl(Windows) · Cmd(macOS) + 클릭, 터치에서 길게 누르기: 기존 선택을 유지하면서 선택을 토글합니다.
    • 빈 영역 클릭: 전체 선택을 해제합니다.
  • 선택된 포인트에 적용되는 selectStyle (opens in a new tab)과 마지막에 선택된(focus) 포인트에 적용되는 focusStyle (opens in a new tab) 옵션이 추가되었습니다. hoverStyle보다 우선 적용됩니다.
  • 선택 상태에 따라 포인트에 rct-point-selected, rct-point-focused, rct-point-unselected 클래스가 붙어 CSS로도 스타일을 지정할 수 있습니다.
series: {
  type: 'bar',
  selectable: true,
  selectStyle: { fill: '#ff9800' },
  focusStyle: { stroke: '#333', strokeWidth: 2 }
}

onSelectionChanged (opens in a new tab) · onFocusChanged (opens in a new tab) 선택 이벤트

  • 선택 목록이 바뀔 때 호출되는 general.onSelectionChanged와 focus 포인트가 바뀔 때 호출되는 general.onFocusChanged 콜백이 추가되었습니다.
  • 선택은 차트 전역으로 관리되므로 한 번의 조작으로 여러 시리즈가 바뀔 수 있고, 영향을 받은 시리즈마다 한 번씩 호출됩니다. 마우스 클릭과 chart.selection 호출 모두 같은 콜백을 호출합니다.
general: {
  onSelectionChanged: (args) => {
    // args.series, args.selectedPoints, args.added, args.removed
  },
  onFocusChanged: (args) => {
    // args.point, args.previousPoint (선택이 모두 해제되면 null)
  }
}

chart.selection 선택 API

  • 프로그램에서 선택을 다루는 chart.selection이 추가되었습니다. select(point), add(point), toggle(point), unselect(point), clear(), contains(point) 메서드와 selectedPoints, focusedPoint, count, isEmpty 속성을 제공합니다.
  • selectedPoints는 선택한 순서대로 반환되며 마지막 항목이 focus 포인트입니다. 범례로 감춘 포인트도 선택 상태를 유지합니다.
chart.selection.select(point);     // point: onPointClick 등에서 받은 데이터포인트
chart.selection.toggle(other);
chart.selection.selectedPoints;    // 선택 순서대로
chart.selection.clear();

🐞 버그 수정

Line · Area 시리즈

  • connectNullPoints (opens in a new tab)가 true일 때 lineType이 'step'·'spline'이거나 첫 포인트가 null이면 선과 영역이 사라지던 문제가 수정되었습니다.
  • Linear 축에서 숫자로 읽을 수 없는 y 값이 하나라도 있으면 선 전체가 사라지던 문제가 수정되었습니다. 이제 그 자리에서 선이 끊깁니다.
  • polar 차트의 Area 시리즈에 데이터가 없거나 모두 null이면 렌더가 중단되어 차트 전체가 그려지지 않던 문제가 수정되었습니다.

Pie · Funnel 시리즈

  • data에 null 항목이 있으면 Pie 시리즈 렌더가 중단되던 문제가 수정되었습니다.
  • 결측 포인트가 있으면 모든 조각의 percent가 NaN이 되던 문제와 othersGroup (opens in a new tab) 기타 조각의 percent가 0이던 문제가 수정되었습니다.
  • othersGroup에서 포인트를 지우면 Pie가 사라지거나 조각이 중복 표시되던 문제가 수정되었습니다.
  • othersGroup이 숫자 문자열 y 값을 문자열로 이어 붙여 합산해 기타 조각이 부풀던 문제가 수정되었습니다.

Waterfall (opens in a new tab) · Histogram (opens in a new tab) · BellCurve (opens in a new tab) 시리즈

  • Waterfall 시리즈 data에 null 항목이 있으면 렌더가 중단되던 문제가 수정되었습니다. null 포인트는 누적에서 빠집니다.
  • BellCurve 표준편차가 잘못 계산되어 곡선 폭이 틀리고, 첫 값이 음수면 곡선이 사라지던 문제가 수정되었습니다. 곡선 폭이 이전과 달라질 수 있습니다.
  • BellCurve 값이 하나뿐이거나 모두 같으면 비정상 포인트가 생기던 문제가 수정되었습니다. 이 경우 곡선을 그리지 않습니다. 곡선 포인트 수는 2 × sigmas × pointsInSigma + 1로 고정되고 평균에 대해 대칭입니다.
  • Candlestick (opens in a new tab) 등 다른 시리즈를 source로 참조하는 BellCurve·Pareto 시리즈에서 렌더가 중단되던 문제가 수정되었습니다.

데이터포인트 갱신

  • 한 번 null이 된 포인트에 updatePoint나 ChartData.setValue로 값을 넣어도 계속 비어 있던 문제가 수정되었습니다.
  • updatePoint로 값을 null로 바꾸면 변경으로 보고되지 않던 문제가 수정되었습니다.
  • 원본이 null·undefined인 포인트에서 textField·categoryField 라벨이 false나 NaN으로 표시되던 문제가 수정되었습니다.

seriesNavigator (opens in a new tab)

  • x축이 시간축일 때 내비게이터를 켜면 차트가 그려지지 않던 문제가 수정되었습니다.

툴팁 (opens in a new tab)

  • 차트를 로드한 뒤 첫 툴팁이 마우스를 올려둔 채로도 곧 사라지던 문제가 수정되었습니다.
  • 사라지는 중인 툴팁을 다시 표시하면 유지되지 않던 문제가 수정되었습니다.

zoom

  • 세로로 놓인 축(y축, inverted 차트의 x축)에서 두 손가락 확대·이동과 드래그 zoom (opens in a new tab)이 위아래 반대로 적용되던 문제가 수정되었습니다. 가로로 놓인 축과 값으로 지정하는 줌은 이전과 같습니다.
  • inverted 차트에서 세로 범주축의 crosshair flag가 다른 칸의 값을 표시하던 문제가 수정되었습니다.