【Tableau Tips】パラメーターで複数選択する方法

【Tableau Tips】パラメーターで複数選択する方法 | Tableau-id Press -タブロイド-
コメント 2023-12-04 000506

tomokoです。

Tableauのパラメーターは基本的に単一選択のみ可能ですが、実は複数選択も可能です。
通常のフィルターと全く同じ挙動ではありませんが、複数データソースにまたがって複数選択フィルターをかけたい場合、
データ量が多くてフィルター表示に時間がかかる場合などに使えるTipsです!

1.複数のデータソースにまたがって複数選択フィルターをかけたい

Categroryをパラメーターで複数選択できるダッシュボードを作成していきます。
挙動としては⇊のようになります。

①カテゴリーパラメーターを作成します。
データ型は文字列、許容値はすべてとし、現在の値に Furniture など、Categoryを1つ指定しておきます。

②パラメータで選択したカテゴリーをデータの [category] と紐づける計算フィールドを作成します。

③複数選択させるためにアクションを設定しますが、その際に必要となる計算フィールドを作成します。

④フィルターとして使用するシートを作成します。
詳細マークに作成したフィールドを追加します。

⑤列にmin(0.0) を追加します。
min(0.0)で表示されている部分をフィルターとして使用することになりますので、
フィルターの選択マークのようにマークを円にし、〇の色は白(背景色)、枠線を黒(グレー)系にします。
さらに、Category Matchの真を黒(グレー)系に、偽は白(背景色)に設定します。
Category Parameter作成時に、現在の値を Furniture に設定したため、Furnitureのみ真となっています。

⑥Categoryフィールドは非表示にし、min(0.0)の軸範囲を設定します。今回は開始値を-0.1、終了値を2に設定しました。
min(0.0)の軸範囲を設定することで、初期表示では真ん中に表示されているCategoryテキストを左に寄せることができます。
書式設定で、グリッド線、ゼロライン、軸線をなしに設定します。
設定後、軸は非表示にしておきましょう。

⑦Category別売上の折れ線チャートを作成します。

⑧パラメーターで選択したカテゴリーをチャートで表示するために、作成しておいた [Category Match] フィールドをフィルターに追加し、
真のみを選択します。

⑨ダッシュボードに折れ線チャートとCategory Palameterを配置します。
Category Parameter作成時に現在の値を Furniture に設定していたので、折れ線チャートはFurnitureのみにフィルターされています。

⑩パラメーターアクションを設定します。
ソースシートは Category Parameterシート 、ターゲットパラメーターは Category Parameter 、
ソースフィールドは Category Action とします。

⑪フィルターアクションを設定します。
ソースシートとターゲットシートは Category Parameterシート、
フィルターはソースフィールドを True、ターゲットフィールドを False とします。

このフィルターアクションを設定することで、Category Parameter選択時に、
選択したフィールドのみがハイライトされる挙動がなくなります。

⑫Category Parameter 作成時に選択したFurniture の指定は外しておきます。(空欄とする)
外さないとパラメーター設定値に Furniture が残り、Furnitureの選択が外れなくなってしまいます。

完成!✨
⇊色の凡例をパラメーターの横に配置しました。

少しハードでしたが、続けて、表示したい項目を入力して指定する方法もご紹介します。こちらの設定はシンプルです!

2.表示したい項目を入力する複数選択パラメーター

パラメーターで表示したい項目を手入力してデータを表示させる方法です。
指定した顧客の情報のみを表示させたいが、データ量が多く顧客名フィルターを表示するのに時間がかかる、
フィルター切り替えに時間がかかる場合に有効です。

Customer Name Searchパラメーターで、手入力でCustomer Nameを複数選択することができるダッシュボードを作成していきます。
⇊完成イメージです。

①顧客番号を指定するためのパラメーターを作成します。
プロパティを文字列にし、許容値はすべて、現在の値に顧客名を指定しておきます。

②パラメーターで設定した顧客名をデータから選択する計算式を作成します。

[Customer Name Search]=’ ‘ は、パラメーターで何も選択しない場合はすべて表示する、という指定です。
何も選択しない場合は何も表示しない、という場合はこの行は不要です。
動作が重いダッシュボードの改善としてこの方法を使用する場合、
すべてを表示するというのはしない方が良いですので、ここではコメントアウトしています。

③作成した計算式 [Customer Name Match] をフィルターに入れ、真のみを選択します。

④パラメーターに複数の顧客名を入力して実行します。
項目は、何かしらの文字で区切れば判定され、空白や でも可能です。( でのワイルドカード検索はできません。)
入力した文字は大文字小文字含め正確に入力が必要です。
⇊選択した3人の顧客情報が表示されました!

フィルター表示のパフォーマンスは、フィルターのドロップダウンリストよりもカスタムリストの方が速く、
今回ご紹介したパラメーターでのカスタム入力設定はフィルターのカスタムリストよりも速いです。
パフォーマンス課題のあるダッシュボードでのフィルター使用において、
選択肢の1つとして持っておくとダッシュボード作成の幅が広がりますね。

まとめ

現状、Tableauではパラメーターの複数選択はパラメータ設定機能としてはできませんが、アクションなどを活用することにより実現できました!
近い将来、パラメータ設定機能として複数選択ができるようになることを願いつつ、それまでの間は今回の方法で実装してみてはいかがでしょうか。
Tableau Pubicでサンプルワークブックも公開しています!
Tableau Public | How to select multiple parameters in Tableau

参考:How to Create Multiple Select Parameters in Tableau