放射状ジッター棒グラフの作り方

放射状ジッター棒グラフの作り方

今回は、放射状ジッター棒グラフの作り方について紹介していきます。

放射状ジッター棒グラフとは、放射状棒グラフとジッタープロットを組み合わせたチャートであり、簡単に言うと、放射状棒グラフをドットの集まりで構成したようなチャートになります。

全体としては、放射状棒グラフとして見ることができて、かつ、各データの大きさをドットの大きさで確認することができます。

ここでは、地域ごとの売上 放射状ジッター棒グラフ(構成要素:商品ID)を作成していきます。

なお、すべてのVizは、サンプルデータであるスーパーストアの「Orders」シートをもとに作成することとします。

パラメーターの作成

以下のパラメーターを作成します。

名前:Radial Degrees Parameter
【プロパティ】
データ型:整数
現在の値:270
許容値:すべて

「Radial Degrees Parameter」は、最長の放射状棒グラフの長さを指定するのに使用します。

名前:Thickness Parameter
【プロパティ】
データ型:浮動小数点数
現在の値:0.7
許容値:範囲
【値の範囲】
最小値:0.1
最大値:1
ステップサイズ:0.1

「Thickness Parameter」は、各放射状棒グラフの幅を指定するのに使用します。

計算フィールドの作成

以下の計算フィールドを作成します。

  • 名前:Region Index
INDEX()

「Region Index」は、地域に振られる項番(1からはじまる)を示します。

売上の低い地域から、1、2、3,・・と項番が振られます。

  • 名前:Width
RANDOM()*[Thickness Parameter]

「Width」は、パラメーターで指定された放射状棒グラフの幅に、0から1の間の乱数を掛け合わせた値を示します。

幅の分だけランダムにドットをプロットし、放射状棒グラフの幅を形成するのに使用します。

  • 名前:Region Sales
WINDOW_SUM(SUM([Sales]))

「Region Sales」は、地域ごとの売上を示します。

  • 名前:Total Sales
WINDOW_SUM(SUM([Sales]))

「Total Sales」は、売上の合計を示します。

  • 名前:Region Sales Percentage
[Region Sales]/[Total Sales]

「Region Sales Percentage」は、売上全体に対する、地域ごとの売上の割合を示します。

地域ごとの売上を全体の売上で割ることで算出しています。

  • 名前:Circumference Length
[Region Sales Percentage]/WINDOW_MAX([Region Sales Percentage])*[Radial Degrees Parameter]

「Circumference Length」は、パラメーター「Radial Degrees Parameter」で指定した値を最大値として、各地域ごとの売上を表した値となります。

例えば、パラメーター「Radial Degrees Parameter」にて「270」と指定した場合、売上がもっとも多い地域では「270」となります。また、その半分の売上の地域では「135」となります。

  • 名前:X
SIN(RADIANS((INDEX()-1)%[Circumference Length]))
*(WINDOW_MAX([Region Index])+([Width]))

「X」は、Viz上の横軸をX軸、縦軸をY軸とみたときに、プロットするデータのX座標を示します。

  • 名前:Y
COS(RADIANS((INDEX()-1)%[Circumference Length]))
*(WINDOW_MAX([Region Index])+([Width]))

「Y」は、Viz上の横軸をX軸、縦軸をY軸とみたときに、プロットするデータのY座標を示します。

ここで、「X」「Y」については、もう少し詳しく説明していきます。

まず、( SIN(RADIANS((INDEX()-1)%[Circumference Length])) , COS(RADIANS((INDEX()-1)%[Circumference Length])) )は、単位円(半径の長さが1である円)上の座標となります。

SIN,COS関数内の「RADIANS((INDEX()-1)%[Circumference Length])」は、0から(各地域の売上をパラメーター「Radial Degrees Parameter」基準で表した値ー1)までの数字の列の繰り返しであり、角度の表しています。(なお、SIN,COS関数内では、ラジアン表記にする必要があり、RADIANS関数をかませています。)

こうすることで、「Circumference Length」が「135」の場合、単位円周上、0度から134度までのドットの列を構成することができます。

ただし、このままでは、すべての地域の売上が重なってしまいます。

そのため、(WINDOW_MAX([Region Index])を掛け合わせることによって、地域ごとに重ならないようにします。

また、このままでは、各放射状ジッター棒グラフの幅がないため、[Width]を加えることで、幅を作り出します。

  • 名前:Region Label Position
INDEX()+([Thickness Parameter]/2)

「Region Label Position」は、各放射状ジッター棒グラフの横に添えるラベルの位置を示します。

ワークシートの編集

次の流れでワークシートを編集していきます。

  1. マークパネルのマークタイプを「円」に変更します。
  2. 「Region」をマークパネルの色に入れます。
  3. マークパネルの色にある「Region Index」を右クリックして、「並び替え」を選択します。
  4. 並び替え画面が表示されるので、以下の通り、入力して、並び替え画面を閉じます。
放射状ジッター棒グラフの作り方:ワークシートの編集:並び替え画面を説明する画像
  1. 「Product ID」をマークパネルの詳細に入れます。
  2. 「X」を列シェルフに入れます。
  3. 列シェルフにある「X」を右クリックして、「次を使用して計算」の「Product ID」を選択します。
  4. 「Y」を行シェルフに入れます。
  5. 行シェルフにある「Y」を右クリックして、「次を使用して計算」の「Product ID」を選択します。
  6. 列シェルフにある「X」を右クリックして、「表計算の編集」を選択します。
  7. 表計算画面が表示されるので、ネストされた計算にて、「Circumference Length」を選択し、以下の通り、入力します。
放射状ジッター棒グラフの作り方:ワークシートの編集:表計算X①を説明する画像
  1. ネストされた計算にて、「Total Sales」を選択し、以下の通り、入力します。
放射状ジッター棒グラフの作り方:ワークシートの編集:表計算X②を説明する画像
  1. ネストされた計算にて、「Region Index」を選択し、以下の通り、入力し、表計算画面を閉じます。
放射状ジッター棒グラフの作り方:ワークシートの編集:表計算X③を説明する画像
  1. 列シェルフにある「Y」を右クリックして、「表計算の編集」を選択します。
  2. 表計算画面が表示されるので、ネストされた計算にて、「Circumference Length」を選択し、以下の通り、入力します。
放射状ジッター棒グラフの作り方:ワークシートの編集:表計算Y①を説明する画像
  1. ネストされた計算にて、「Total Sales」を選択し、以下の通り、入力します。
放射状ジッター棒グラフの作り方:ワークシートの編集:表計算Y②を説明する画像
  1. ネストされた計算にて、「Region Index」を選択し、以下の通り、入力し、表計算画面を閉じます。
放射状ジッター棒グラフの作り方:ワークシートの編集:表計算Y③を説明する画像
  1. 「Sales」をマークパネルのサイズに入れます。
放射状ジッター棒グラフの作り方:ワークシートの編集を説明する画像

ワークシートの微調整

次の流れでワークシートの微調整をしていきます。

  1. 行シェルフにある「Y」の右側に、「Region Label Position」を入れます。
  2. 行シェルフにある「Region Label Position」を右クリックして、「二重軸」を選択します。
  3. 行シェルフにある「Region Label Position」を右クリックして、「次を使用して計算」の「Region」を選択します。
  4. Viz上で、「Y」の縦軸を右クリックして、「軸の同期」を選択します。
  5. 「すべて」マークパネルの色にある「メジャーネーム」を除きます。
  6. 「Region Label PositionΔ」マークパネルのサイズにある「合計(Sales)」を除きます。
  7. 「Region Label PositionΔ」マークパネルの詳細にある「Product ID」を除きます。
  8. 「Region Label PositionΔ」マークパネルのラベルに、「Region」、および、「Sales」を入れます。
  9. 「Region Label PositionΔ」マークパネルのラベルを左クリックして、ラベルの外観の配置にて、水平方向を「左」に、垂直方向を「中」に変更します。
  10. さらに、ラベルの外観のテキストの「…」を選択します。
  11. ラベルの編集画面が表示されるので、以下の通り、入力し、「OK」ボタンを押します。
放射状ジッター棒グラフの作り方:ワークシートの微調整:ラベルの編集画面を説明する画像
  1. 「YΔ」マークパネルの色を左クリックして、不透明度を75%に変更します。
  2. 「Region Label PositionΔ」マークパネルの色を左クリックして、不透明度を0%に変更します。
  3. 列シェルフにある「X」を右クリックして、「ヘッダーの表示」のチェックを外します。
  4. 行シェルフにある「Y」を右クリックして、「ヘッダーの表示」のチェックを外します。
  5. Viz上で右クリックして、「書式設定」を選択します。
  6. 線の書式設定にて、シートのゼロライン、および、グリッド線を「なし」に設定します。
  7. 枠線の書式設定にて、行の境界線、および、列の境界線を「なし」に設定します。
  8. 「YΔ」マークパネルのツールヒントを左クリックして、「ツールヒントの編集」を開き、以下の通りに入力し、「OK」ボタンを押します。

Product ID: <Product ID>
Region: <Region>
Sales: <合計(Sales)>

  1. 「Region Label PositionΔ」マークパネルのツールヒントを左クリックして、「ツールヒントの編集」を開き、以下の通りに入力し、「OK」ボタンを押します。

Region: <Region>
Sales: <合計(Sales)>

  1. データペインにて、パラメーターの「Radial Degrees Parameter」を右クリックして、「パラメーターの表示」を選択します。
  2. データペインにて、パラメーターの「Thickness Parameter」を右クリックして、「パラメーターの表示」を選択します。
  3. 「合計(Sales)」凡例カードの「▼」を左クリックして、「タイトルの編集」を選択します。
  4. 凡例タイトルの編集画面が表示されるので、「Sales」と入力し、「OK」ボタンを押します。
  5. 「YΔ」マークパネルのサイズを左クリックして、サイズを調整します。
  6. シートの名前を「地域ごとの売上 放射状ジッター棒グラフ(構成要素:商品ID)」に変更します。
放射状ジッター棒グラフの作り方:ワークシートの微調整を説明する画像

地域ごとの売上 放射状ジッター棒グラフ(構成要素:商品ID)の完成

これで、地域ごとの売上 放射状ジッター棒グラフ(構成要素:商品ID)の完成の完成です。

Westでの売上が一番高いことがわかるとともに、商品ごとの売上がわかります。

放射状ジッター棒グラフの作り方:地域ごとの売上 放射状ジッター棒グラフ(構成要素:商品ID)の完成を説明する画像

Tableau Publicのリンクを貼っています。

また、パラメーターを変更することによって、放射状ジッター棒グラフの形状に変化を加えることができます。

パラメーター「Radial Degrees Parameter」を変更すると、各放射状ジッター棒グラフの長さを変更できます。例えば、「Radial Degrees Parameter」を「360」にすると、最大の放射状ジッター棒グラフの長さが一周の円となり、その他の地域の放射状ジッター棒グラフの長さも連動して変わります。

放射状ジッター棒グラフの作り方:地域ごとの売上 放射状ジッター棒グラフ(構成要素:商品ID)の完成(長さの変更)を説明する画像

パラメーター「Thickness Parameter」を変更すると、各放射状ジッター棒グラフの幅を変更できます。例えば、「Thickness Parameter」を「0.5」にすると、各放射状ジッター棒グラフの幅が細くなります。

放射状ジッター棒グラフの作り方:地域ごとの売上 放射状ジッター棒グラフ(構成要素:商品ID)の完成(幅の変更)を説明する画像