Circle Network Chartとは
Circle Network Chartは円状にプロットした点同士を線でつなげてグラフです。サイトページ間の移動や、商品の購入順序などのデータに使用できそうです。参考にしたTableau Magicでは以下のようなグラフが作成されていました。

今回はこのCircle Network Chartをつくってみました。
Circle Network Chartのつくり方
では、具体的なつくり方を見ていきましょう。今回は以下の2つのデータを用意しました。
Data
Path
Dataは始点(From)と終点(To)に対する値(Value)と、各点に対応する順番(Starting、Ending)のデータになります。StartingとEndingはマスタをもうけても良いかもしれません。
そしてこのDataとPathを結合すれば、データの準備は完了です。

では、グラフをつくっていきましょう。
今回は、Circle Network Chartをつくってみました。ぜひお試しください!
Tableau Public : https://public.tableau.com/views/CircularNetworkChart/CircularNetworkChart?:language=ja&:display_count=y&:origin=viz_share_link
人生とは一直線ではなくて循環するもの。
- バーバラ・ブラハム -
- バーバラ・ブラハム -
Circle Network Chartは円状にプロットした点同士を線でつなげてグラフです。サイトページ間の移動や、商品の購入順序などのデータに使用できそうです。参考にしたTableau Magicでは以下のようなグラフが作成されていました。

今回はこのCircle Network Chartをつくってみました。
Circle Network Chartのつくり方
では、具体的なつくり方を見ていきましょう。今回は以下の2つのデータを用意しました。
Data
| From | To | Starting | Ending | Value |
| A | B | 1 | 2 | 96 |
| A | C | 1 | 3 | 47 |
| A | D | 1 | 4 | 41 |
| A | H | 1 | 8 | 61 |
| A | I | 1 | 9 | 13 |
| A | J | 1 | 10 | 51 |
| B | D | 2 | 4 | 93 |
| B | E | 2 | 5 | 82 |
| B | F | 2 | 6 | 19 |
| B | H | 2 | 8 | 71 |
| B | J | 2 | 10 | 32 |
| C | D | 3 | 4 | 87 |
| C | F | 3 | 6 | 5 |
| C | H | 3 | 8 | 19 |
| C | J | 3 | 10 | 51 |
| D | E | 4 | 5 | 17 |
| D | H | 4 | 8 | 62 |
| D | I | 4 | 9 | 30 |
| D | J | 4 | 10 | 12 |
| E | F | 5 | 6 | 91 |
| E | G | 5 | 7 | 22 |
| E | J | 5 | 10 | 69 |
| F | I | 6 | 9 | 18 |
| F | J | 6 | 10 | 91 |
| G | H | 7 | 8 | 61 |
| G | J | 7 | 10 | 90 |
| H | I | 8 | 9 | 14 |
| H | J | 8 | 10 | 60 |
Path
| Path |
| 0 |
| 1 |
Dataは始点(From)と終点(To)に対する値(Value)と、各点に対応する順番(Starting、Ending)のデータになります。StartingとEndingはマスタをもうけても良いかもしれません。
そしてこのDataとPathを結合すれば、データの準備は完了です。

では、グラフをつくっていきましょう。
- [Path]でビンを作成する。ビンのサイズは1に設定。

- 以下の計算式を準備する。
Route[From]+"-"+[To]
IndexINDEX()
TC_StartingWINDOW_MAX(MAX([Starting]))
TC_EndingWINDOW_MAX(MAX([Ending]))
TC_Circumference360 / WINDOW_MAX(MAX([Ending]))
XIF [Index] = 1 THEN
SIN(RADIANS([TC_Starting]*[TC_Circumference]))
ELSE
SIN(RADIANS([TC_Ending]*[TC_Circumference]))
END
YIF [Index] = 1 THEN
COS(RADIANS([TC_Starting]*[TC_Circumference]))
ELSE
COS(RADIANS([TC_Ending]*[TC_Circumference]))
END - マークタイプを「線」にする。
- [Path(ビン)]を列に入れ、「欠落した値を表示」にチェックを入れる。

- [Path(ビン)]をマーク内の「パス」に入れる。
- [Route]を詳細に入れる。
- [X]を列に入れて右クリックし、「次を使用して計算」→[Path(ビン)]を指定。
- [Y]を列に入れて右クリックし、「次を使用して計算」→[Path(ビン)]を指定。
この時点で、以下のようになっているか確認してください。
- [X]を右クリック→「表計算の編集」から、以下のように設定。
・ネストされた計算:TC_Circumference
・次を使用して計算:特定のディメンション→[Path(ビン)]と[Route]にチェック
※[Path(ビン)]を上にする - [Y]を右クリック→「表計算の編集」から、以下のように設定。
・ネストされた計算:TC_Circumference
・次を使用して計算:特定のディメンション→[Path(ビン)]と[Route]にチェック
※[Path(ビン)]を上にする - [Value]をマーク内の「サイズ」に入れる。

- [X]をコピーして列の右側におく。
- コピーした方のマークタイプを「円」にし、「サイズ」から[Value]を除外する

- 二重軸にして軸の同期をし、不要なヘッダーや線を削除して完成!

今回は、Circle Network Chartをつくってみました。ぜひお試しください!
Tableau Public : https://public.tableau.com/views/CircularNetworkChart/CircularNetworkChart?:language=ja&:display_count=y&:origin=viz_share_link

コメント