오늘은 Tableau에서 Radial Pie Gage 차트를 그려보도록 하겠습니다. 최종 산출물은 아래와 같은 그림이 되겠습니다.
![](https://blog.kakaocdn.net/dn/S1clj/btqGvbtOv5P/kNpKF6qq3D4DUKlX3B589k/img.png)
1. 우선 테스트를 위해 Data를 마련하도록 하겠습니다.
Description | Order | Response |
AWS | 1 | 23.5 |
TensorFlow | 2 | 28.4 |
Jupyter Notebooks | 3 | 40.3 |
SQL | 4 | 53.6 |
R | 5 | 59.2 |
Python | 6 | 76.3 |
요렇게 만들어서 Excel 또는 CSV로 저장한 뒤 Tableau에서 불러옵니다.
2. 불러온 데이터를 유니온으로 복사해서 붙여넣습니다. 그럼 이렇게 'Table Name'이라는 필드가 하나 추가되면서 아래쪽으로 데이터가 붙습니다.
![](https://blog.kakaocdn.net/dn/detNXO/btqGvZGy1V0/LYLAc4YDj44FPlyekO1rPk/img.png)
![](https://blog.kakaocdn.net/dn/bcsStB/btqGtWRJbnu/l5y7BsjXzSKTekK8XIqiBk/img.png)
3. Table Name에서 '계산된 필드 만들기' 를 클릭하여 새 필드를 만듭니다. 들어가야할 수식은 아래와 같으며, 의미는 원본일 경우에는 1, 복제본일 경우에는 271을 대입하는 것입니다.
IIF([Table Name]='progress', 1, 271)
![](https://blog.kakaocdn.net/dn/bidlQO/btqGvQCYgFy/eExFIWG4RJZczVgWL3ua8K/img.png)
의미는 이렇습니다. AWS 한 항목을 생각해볼 때, 화살표 모양으로 1부터 화살머리 부분까지 271개의 포인트를 생성해서 이 두 포인트? 인덱스의 활용은 나중에 설명하도록 하겠습니다. 우선 이름을 Path라고 설정하여 필드를 추가합니다.
![](https://blog.kakaocdn.net/dn/obl1S/btqGsonvg5W/cFwKc8ATI3vqXHtK3qWDT1/img.png)
4. 구간차원 만들기
시트 편집창으로 와서 측정값: Path 로부터 구간차원을 만듭니다. Path는 현재 한 항목에 대해 1, 271 의 값이 입력되어 있는 상태인데, 이를 특정 간격(1)으로 나누는 차원을 만듭니다. 즉 1부터 271개의 포인트를 생성하는 작업입니다.
![](https://blog.kakaocdn.net/dn/d5e5Uo/btqGtekA7Q6/JNo4BIEGUU06A87RMFtum0/img.png)
![](https://blog.kakaocdn.net/dn/ndzej/btqGxPKbaaS/JHCInZYwvWtgPq1TuTWNzK/img.png)
5. 계산된 필드를 몇개 만들도록 하겠습니다. 만들어야 하는 필드가 좀 많은데...
(1) Percentage, (2) Index, (3) wc_pie, (4) wc_start, (5) wc_percentage, (6) x (7) y 입니다.
(1) Percentage: 현재 최고값인 76.3으로 나눈 값
[Response]/76.3
(2) Index
(INDEX()-1)*2
(3) wc_pie: 파이(3.14)값
WINDOW_MAX(MAX(pi()))
(4) wc_start: 시작 위치. 좌표를 기준으로 각 항목마다 1씩 떨어져있습니다.
WINDOW_MAX(MAX([Order]))
(5) wc_percentage:
WINDOW_MAX(max([Percentage]))
(6) x: Path 포인트 별 x 좌표를 계산합니다.
IF[Index]<270 THEN SIN([Index] * [wc_percentage]*[wc_pie]/180)*[wc_start] ELSEIF [Index]>270 then SIN((540-[Index])*[wc_percentage]*[wc_pie]/180)*([wc_start]+1) ELSE SIN(([Index] * [wc_percentage]+3)*[wc_pie]/180)*([wc_start]+0.5) END
radial pie gage 차트가 어려운게 자동으로 그려주는 게 아니고 이렇게 포인트 계산을 직접해서 그려줘야 합니다. 그것도 화살표를 나타내는 안선/바깥선/화살꼭지를 각각 그려줘야 합니다. 포인트 1~269번까지는 안쪽 포인트입니다. 인덱스가 1일 경우 시작 포인트는 1 즉, 중심점에서부터의 거리를 1로하는 원호를 그리게 됩니다. 270~539까지는 시작포인트가 1+1인 즉 2의 거리를 가진 원호를 그리게 됩니다. 마지막으로 270번째 포인트는 1.5의 원호를 그리는데, 원래 퍼센티지에서 3도 더 진행한 포인트까지 진행합니다.
(7) y: Path 포인트 별 y 좌표를 계산합니다.
IF[Index]<270 THEN COS([Index] * [wc_percentage]*[wc_pie]/180)*[wc_start] ELSEIF [Index]>270 then COS((540-[Index])*[wc_percentage]*[wc_pie]/180)*([wc_start]+1) ELSE COS(([Index] * [wc_percentage]+3)*[wc_pie]/180)*([wc_start]+0.5) END
이렇게 계산된 필드를 만들었습니다. 고생하셨습니다.
6. 이제는 비교적 쉬운 부분만 남았습니다. 각 차원 및 측정값을 이용하여 그래프를 그려보겠습니다.
(a) Path(구간차원) 을 세부정보에 드래그합니다.
![](https://blog.kakaocdn.net/dn/oAn3K/btqGxmO14Ow/wpA8s9BaucS9niKXnKY1T0/img.png)
(b) 측정값 x, y 를 각각 열, 행에 위치시키고, x, y 각각에 대해, 우클릭 / 다음을 사용하여 계산 / Path(구간차원) 을 클릭합니다.
![](https://blog.kakaocdn.net/dn/CcngA/btqGurKyHhX/2TpZ4QwqgLaLdylU9W0Si0/img.png)
![](https://blog.kakaocdn.net/dn/ITVUe/btqGxmO2ank/e0nSnN4HkfUVRbMjGyxgX0/img.png)
![](https://blog.kakaocdn.net/dn/cPZITD/btqGvbm8vRE/EDg4m6gs2IxcEvcvkSAky0/img.png)
먼가 될것같은 그림이 나왔습니다.
(c) 마크 유형을 다각형으로 변경하고, 측정값: Index를 끌어다 경로에 올려놓습니다. 드디어 원호형 화살표가 만들어졌습니다.
![](https://blog.kakaocdn.net/dn/baBebh/btqGxPwHuvR/9C7AZ7V0nvvxhZdbwNmtpk/img.png)
(d) Description을 끌어다 색상에 놓습니다. 드디어 그래프가 완성되었습니다.
![](https://blog.kakaocdn.net/dn/muzCh/btqGuFBLz9z/DMQbLwqra0BMJdwcz1EX8k/img.png)
오늘은 Radial Pie Gage 차트에 대해 구성 방법을 알아보았습니다. 완성도를 높이기 보다는 기본 구축 방법에 대해서만 올려놓도록 하겠습니다.
그럼 이만~~~
'ETC' 카테고리의 다른 글
태블로 파이차트 pie chart (0) | 2020.08.14 |
---|---|
태블로 Radial Bar 차트 (0) | 2020.08.12 |
Github SSH 연결 사이트 (0) | 2020.07.13 |
Windows server2012 IIS 서버 특정 포트 개방- 외부에서 특정 포트 접속 안될때.. (1) | 2020.05.08 |
Oracle vm virtualbox NAT네트워크로 인터넷 연결 (6) | 2020.04.10 |
댓글