今回のテーマは、あるディメンションの複数アイテムを、Set Actionを用いて選択できるようにすることです。 以下のViz作成を通して解説します。
Lindseyの以下のブログを参考にしました。 http://www.lindseypoulter.com/2018/12/04/select-multiple-items-using-set-action-menus/ 使用したワークブックは以下からダウンロードできます。使用データはSample Super Storeです。 https://public.tableau.com/profile/yoshitaka6076#!/vizhome/SetActions-SelectingMultipleItems/Dashboard2
【モチベーション】 今回のテーマについて「別にCtrl + Click (windows)でいいじゃないか」と思われる方、正解です。 しかしながら、もしアイテム数がとても多い場合(スクロールバーをけっこう引っ張らないといけない場合)には、ちょっと選択が大変かなと思います。 また、Set Actionの方がVizの作り方に幅が出ます。モチベーションとしてはこのあたりでしょうか。
【作り方】 まず初めに、下記の計算フィールドを用意します。
Brand TRIM( SPLIT( [Product Name], " ", 1 ) )
要はProduct Nameからブランド名を抜き出して、それでデータをグルーピングしたいということです。 一方で明らかにブランド名じゃない結果も帰ってきますが、そのデータは除外して頂ければ幸いです。
次にBrandでセットを作成します。一旦はHonのみ選択します。
そして下記の計算フィールドを作成します。
Measure
Sales
RANK
RANK(SUM(Measure))
Selected Dot IF [Brand Set 1] THEN "●" ELSE "○" END
そして下記のようにワークシートにそれぞれ配置して下さい。
次にワークシートのSet Actionを以下のように設定します。
これで、ワークシート内のドットをクリックすると、そのBrandをセットに含めるかどうかのメニューが出てきます。このあたりの操作は特に変哲はないですね。
ここまでが今回の大筋です。ここから複数アイテムを選択できるようにしていきます。 初めに、Brandでさらにセットを2つ作成します。2つ目のセットにはGlobal、3つ目のセットにはCanonを選択します。
次に、Selected Dotの中身をアップデートします。
Selected Dot IF [Brand Set 1] OR [Brand Set 2] OR [Brand Set 3] THEN "● Click on circle. Then select which slot to add the selected manufacturer to" ELSE "○ Click on circle. Then select which slot to add the selected manufacturer to" END
ここで文字列を足しているのはオマケのようなもので、Set Action選択時のメニュー画面をわかりやすくしよう、という程度です。
文字列の改行については以下がReferenceです。
ここでTipsなのですが、Tableauの行/列シェルフの文字って
1.Vertical AlignmentをTopにして 2.適当な文字サイズと行/列ヘッダーの幅では 文字列の1行目だけを表示するようにできるのですね。裏技感がたっぷりですが。
次に、下記の計算フィールドを作成します。
In Set
[Brand Set 1] OR [Brand Set 2] OR [Brand Set 3]
Slot
[Brand] + " " + IF [Brand Set 1] THEN "SLOT 1" ELSEIF [Brand Set 2] THEN "SLOT 2" ELSEIF [Brand Set 3] THEN "SLOT 3" END
上記を用いた以下のワークシートを用意します。
(ところで僕のTableau Publicは英語設定にしているのに、True/Falseは日本語になるんですね)
最後に作成したワークシートをダッシュボードにまとめて、ダッシュボードアクションをまとめれば完成です。
【おまけ】 このテクニックを用いて、カラーホイールVizを作成しました。 https://public.tableau.com/profile/yoshitaka6076#!/vizhome/ColorPaletteCircleinprogress/HSVColorCircle
Set Actionを用いて複数アイテムを選択する方法、いかがでしたでしょうか。 ご質問等はLinkedin、Twitter等によろしくお願いいたします。