Tableauで異なるデータソースをまたいでフィルターをかけたいとき、恐らく皆さんはパラメーターを使用すると思いますが、Tableauのパラメーターでは単一の値しか扱うことはできません。複数選択したい場合に困ってしまうと思います。

ただし、計算式と簡単な正規表現を利用することで、パラメーターでも複数選択に近いことを行うことが可能です。今回はサンプルスーパーストアのデータを用いてそのやり方を説明します。

なお、複数選択可能なダッシュボードは以下にパブリッシュしています。
複数選択ダッシュボード | Tableau Public

パラメーターで複数選択を実現する4ステップ

ここでは例として「ECサイトの売り上げを地域別に見たい場合」を取り上げます。地域にフィルターをかけて数値をみる際に、複数選択をしたい場合です。

ステップ1: パラメーター・計算式の作成

まず、下記のようにパラメーターと計算式を作成します。

<パラメーター>

<計算式>

上記の計算では、「地域選択」の値が「地域」と一致している場合にTrueを、もしくは「地域選択」が「すべて」の場合にTrueを返します。

ステップ2: ワークシートの作成

2つのシートを用意します。

  • 地域選択用のシート
  • 売上推移のグラフ

<地域選択用のシート>

<売上推移のグラフ>

ステップ3: ダッシュボードの作成

作成したワークシートでダッシュボードを構成します。

ステップ4: パラメーターアクションの設定

最後に、パラメータアクションを設定します。

この時「集計」を「連結」に、「選択項目をクリアした結果」を「すべて」にします。「ターゲットパラメーター」は「地域選択」を選択し、「ソースフィールド」は「地域」を選択します。

これで地域選択シートの地域名をクリックしたものでフィルターがかけられるようになりました。

作成したダッシュボードの挙動

では、作成したダッシュボードの動きを見ていきます。

ダッシュボードではクリックした項目でフィルターがかかっており、選択を解除すると地域のすべての値が表示されています。この時にctrlキーを押しながら地域を複数選択することで、複数のフィルターがかけられるようになっています。

<ctrlキーなしの選択>

<ctrlキーありの選択>

各種計算の解説

今回の実装でカギになるのが、パラメータアクションの「連結」機能です。ダッシュボード上で地域を複数選択することでパラメーターには単一の値ではなく、複数の値が ”, ”(カンマ)区切りで入ります。

たとえば、下記のようにパラメーターの値をみると「九州, 四国」というふうに2つの地域が入っています。

この「九州, 四国」を計算式の「選択地域の売上」ではreplace関数を用いて「九州|四国」の形式に変換しています(「カンマ区切り」ではなく「カンマ+空白(半角)」を ”|” に置換しています)。

「九州|四国」にすればREGEXP_MATCH関数でカテゴリにマッチする値がTrueとなるので、「九州と四国」がダッシュボード上で表示されるという仕組みです。

まとめ

この記事ではパラメーターで複数の値を選択する方法を紹介しました。

パラメータアクションの「連結」を使用して値を複数入れることができれば、パラメーターでも複数の値を取り扱うことが可能になります。パラメーターはデータソースを横断してフィルターをかけることも可能なのでぜひ実践してみてください。

お気軽にご質問、ご相談ください

関連タグ

加藤海

3C分析用ダッシュボードや業績比較ダッシュボードなど、クライアントの各要望に応じたダッシュボード設計・開発を担当。また、Tableauの内製化トレーニングやコーチングサービスも担う。 Tableau Certified Data Analyst保持。

関連ブログ