WOW2020チャレンジ ~二次元チャートの作成(Week 22)~

WOW2020 Week 22で、紹介されたダッシュボードを作ってみようと思います。
2020 Week 22: Profitability spotlight – is your budget recovered? – Workout Wednesday *1

f:id:gri-blog:20201228000747p:plain
チャートの上部にあるClik to expandをクリックすると下図のように変わります。また、下図の左側にあるAvg REVIEWをクリックすると元のチャートに戻ります。
f:id:gri-blog:20201228000912p:plain

1. データーソースの作成

同じデーターソースを三つユニオンします。
f:id:gri-blog:20201228002049p:plain

2. 計算フィールドの作成

(1)path

IF [Table Name]='WW' THEN 1
ELSEIF [Table Name]='WW1' THEN 2
ELSE 3
END

(2)FIXED REVIEW

AVG( ([Review]-{ FIXED :MIN( [Review])})
/ ({FIXED :MAX( [Review])} - {FIXED:MIN( [Review])}))

(3)FIXED PROFIT and SALES

(IF ATTR([Table Name])='WW1' THEN
(AVG([Revenue])-MIN({ FIXED [Table Name]:
  MIN(IF [Table Name]='WW1'
    THEN ([Revenue])
END)}))
/
( (MAX({ FIXED [Table Name]:
  MAX(IF [Table Name]='WW1'
    THEN ([Revenue])
END)})
-
MIN({ FIXED [Table Name]:
  MIN(IF [Table Name]='WW1'
    THEN ([Revenue])
END)})))
ELSE (AVG([Budget])-MIN({ FIXED [Table Name]:
  MIN(IF [Table Name]='WW2'
    THEN ([Budget])
END)}))
/
( (MAX({ FIXED [Table Name]:
  MAX(IF [Table Name]='WW2'
    THEN ([Budget])
END)})
-
MIN({ FIXED [Table Name]:
  MIN(IF [Table Name]='WW2'
    THEN ([Budget])
END)})))
END)

(4) X

FLOAT(If [Path]=1 THEN 0
ELSEIF [Path]=2 OR [Path]=3 THEN 1
END)

(5)Y

IF ATTR([Path])=1 THEN [FIXED REVIEW]
ELSEIF ATTR([Path])=2 THEN [FIXED PROFIT and SALES]
ELSEIF ATTR([Path])=3 THEN [FIXED PROFIT and SALES]
END

(6)Color for - Profit
収益が予算を下回ったとき、赤く表示するための計算フィールドです。

IF AVG([Revenue])<AVG([Budget]) THEN 'Red'
ELSE NULL END

3. シートの作成

(1)多角形フラグの作成
列に、ディメンションに変換したXを、行にYを置きます。
マークを多角形に変え、Pathをパスに、詳細にSub-Categoryを配置します。
色も灰色に、不透明度30%に変更します。
f:id:gri-blog:20201228004707p:plain

(2)線フラグの作成
行にあるYを複製し、マークを線に変更し、二重軸とします。色の効果 マーカーはすべてを選択します。
X軸の範囲を、固定にし、-0,01から0.8にします。これは、見栄えをよくするための操作になります。
Y軸は、目盛りを無くし、名称を "Avg REVIEW" にします。 色に、2.(6)のColor for - Profit を置き、不透明度100%にします。 f:id:gri-blog:20201228010939p:plain

4. セットアクションの設定

(1)セット Sub-Category Set の作成
Sub-Categoryからセットを作成します。全般のリストから選択を選んで下さい。

(2)計算フィールド Expand の作成

IF [Sub-Category Set Point]='t'
THEN [Sub-Category]
ELSE 'Click to expand '
END

(3)セットアクションの編集
ワークシート→アクション→アクションの追加→セット値の変更 からセットアクションの編集を行います。
下図のように設定して下さい。(データーソースは1.で作成したものを選択します。)
f:id:gri-blog:20201228012142p:plain

5. 平均収益のラベルの設定

(1)計算フィールド Label for Sub_Category/Score の作成

{INCLUDE [Sub-Category]: IF MAX([Sub-Category Set Point])='t'
THEN STR( (AVG([Review])))
ELSE MAX([Sub-Category])
END }

この計算フィールドを棒グラフのラベルに置きます。

(2)計算フィールド Label for Sub_Category の作成

{INCLUDE [Sub-Category]: IF MAX([Sub-Category Set Point])<>'t'
THEN STR(AVG([Review]))
ELSE ''
END }

この計算フィールドを棒グラフのラベルに置きます。

以上が説明となります。直感的に収益と予算の関係がわかるチャートなので、是非作ってみて下さい。

*1:解説動画あり。ダッシュボードのダウンロードも可能