Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[#823] [3.0] Stack차트 데이터 null대응 #830

Merged
merged 3 commits into from
Jun 15, 2021

Conversation

jhee564
Copy link
Collaborator

@jhee564 jhee564 commented Jun 11, 2021

이슈 및 해결

1. line chart (stack, fill) 에서 데이터 값으로 null 배열이 들어올 경우 차트 전체에 색이 들어가는 현상 발생
image
-> lineChart > draw 로직에서 fill 넣는 로직 수정
-> 중복하여 fill하던 로직 조건문 추가
-> 데이터 배열 중간에 null이 포함되있을 경우 한번에 그리지 않고 끊어 그린뒤 fill하는 로직 추가

2. 값이 null인 경우 Tooltip에 0이나 null이 아닌 y 좌표 값이 표시되는 현상 발생
image
-> Tooltip에 값을 표시할 때 값이 null인 경우 Tooltip자체에 표시되지 않도록 수정

3. 다수의 Series들의 Stack을 쌓는 도중, 직전 Series의 값이 null인 경우 무조건 바닥에 붙어 그려지는 현상 발생
image
-> 차트를 쌓을 때 바로 직전 Series만 바라보고 y 좌표를 구하는데, 직전 series값이 null이 아닐 때까지 순회 하면서 y 좌표를 구하도록 수정

4. 축 타입이 'step'인 경우 label값으로 null로 채워진 배열이 들어오면 Error 발생
-> optional chaining 넣어 Error가 발생되지 않도록 함

- data 배열 속 null이 존재 할 경우 canvas의 lineTo 메소드에 null값이 그대로 들어가 이상현상 발생하여 0으로 치환하는 로직 넣음
-  Tooltip에서 StackChart의 경우 original데이터를 참조하는데 첫번째 시리즈만 original데이터를 넘기지 않아 추가함
- stack 차트만 데이터 null에 대해서 0으로 치환하는 로직 수행하도록 수정
- Stack에서 값이 null인 series는 tooltip에 표시되지 않도록 수정
### line chart
- Fill을 채우는 로직이 2번 수행되는 현상 제거
- 데이터가 null값일 경우 Fill을 정상적으로 수행하지 않는 로직 개선
- Stack 예제 코드 수정
### 공통
- Stack Series의 y포지션을 계산하는 로직에서 바로 직전 series만 참조하는 로직 개선
- label타입이 'step'일 경우 null을 처리 하니 못하는 현상 제거
@jhee564 jhee564 changed the title [#823] [3.0] Stack차트 데이터 null대응 WIP: [#823] [3.0] Stack차트 데이터 null대응 Jun 14, 2021
@jhee564 jhee564 changed the title WIP: [#823] [3.0] Stack차트 데이터 null대응 [#823] [3.0] Stack차트 데이터 null대응 Jun 15, 2021
@kdeun1 kdeun1 merged commit 76f4254 into 3.0 Jun 15, 2021
@kdeun1 kdeun1 deleted the 823_3.0_chart_stack_line_data_null_array_bug branch June 15, 2021 04:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants