Professional Field

ETL : Airflow / DW(Snowflake) | AI : Python | BI : Tableau / Power BI

BI (Tableau)/Skill

[Tableau] Half Donut Chart 도넛 차트 그리기(2)

K_CY 2024. 12. 17. 12:20

이전에 도넛차트와 게이지차트를 그리는 방법에 대해 포스팅을 하였다.

그런데, 게이지차트에 여러개의 세그먼트를 적용시키는 방법을 도저히 모르겠어서, 수 많은 서칭 끝에 찾아냈다.

 

포스팅을 통해 태블로를 이용하시는 분들이 잘 사용하시면 좋을 것 같다.

 

기존에는 반원에 2개의 값만 가능했었는데, 이미지를 보면 4개로 나뉜것을 볼 수 있다. 

먼저 10가지의 측정값과 3가지의 매개변수 값이 필요하다. 

 

Main Table

01. Percent of Total SUM([Value])/TOTAL(SUM([Value]))
02. End Position RUNNING_SUM([01. Percent of Total])
03. Start Position [02. End Position]-[01. Percent of Total]
04. End Angle 180-180*[02. End Position]
05. Start Angle 180-180*[03. Start Position]
06. Angle Spacing ([05. Start Angle]-[04. End Angle])/([Points]-1)
07. Angle IF MAX([Range])<=100 THEN
    // Top of the arc.
    [05. Start Angle]-((MAX([Range])-1)*[06. Angle Spacing])
ELSE
    // Bottom of the arc.
    [05. Start Angle]-((200-MAX([Range]))*[06. Angle Spacing])
END
08. Radius IF [Range]<=100 THEN
    // Top of the arc
    [Outer Radius]
ELSE
    // Bottom of the arc
    [Inner Radius]
END
09. X MAX([08. Radius])*COS(RADIANS([07. Angle]))
10. Y MAX([08. Radius])*SIN(RADIANS([07. Angle]))
[Points] 정수 : 100
[Inner Radius] 실수 범위 : 최소값 0.01 / 최대값 0.99 / 표시 형식 0.6
[Outer Radius] 실수 : 1

 

Model Table

Range 1 ~ 202

 

*[Value] 는 측정값

*[Points], [Inner Radius], [Outer Radius] 는 매개변수

*Range 는 별도 테이블 구성

 

Main Table 과 Model Table 을 결합한다. (연산은 1=1 )

1. 행선반에는 10.Y  Green pills  열선반에는 09.X Green pills 을 넣어 좌표를 선정한다.

2. 두 pills 모두 테이블 계산 편집에서 특정 차원으로 설정해준다. (정렬 순서 꼭 특정차원!)

3. 마크는 다각형을 선택한 후, Range는 경로에 설정하고 세그먼트로 나눌 차원을 색상에 넣어준다.

 - 도구 설명은 각 세그먼트의 비율 (%)

4. 축 편집을 통해 해당 범위로 설정해준다. 

 

 

5. 결과 ( 다각형 마크를 사용해야 되기 때문에 레이블 삽입이 어려움 )

 

리뷰 

- 구현이 어려운 레이블 마크를 사용할 수 있는 방법을 추가 연구

- Model Table은 곡선을 그릴때 필요한 밀도를 칠하기 위해 별도로 생성해주어야 함

 

 

감상평 

- 좌표를 이용한 대시보드는 너무 어렵다. 실무에 적용하기는 어렵고, 홍보화면 같은 단편으로 보여줄 수 있는 디스플레이가 필요할 때 유용할 것 같다. 

 

 

 

 

 

 

https://www.flerlagetwins.com/2022/12/half-donut.html

 

Half Donut Chart in Tableau

I am regularly asked how to create a half-donut chart in Tableau, kind of like this:     My first response is always to recommend anot...

www.flerlagetwins.com