【フィルタボタンの作成方法】Tableauでユーザーが見やすい年比較ダッシュボードを作成しよう！

# <a id="section0" href="#section0">はじめに</a> 
こんにちは。DataSabar取得に向け鍛錬中のしまです。
少しでも誰かの役に立てたらいいな。と思ってノウハウを共有しています。

今回は以下のような年比較ダッシュボードの作成方法をご紹介いたします。
[特徴]
表示させる値と比較年の選択を、見やすいボタンクリックで行うことができるため**ユーザーが使いやすい**！（←これすごく重要）

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/1dc58d6f-5383-85e3-af9d-6b7a18e6bd13.png)


データソースはTableau DeskTopに標準搭載されているサンプル-スーパーストアを用いています。
Tableau Publicに掲載しているのでよかったらご覧ください！
⇒[年比較ダッシュボード](https://public.tableau.com/app/profile/shoma.ito/viz/_17309960475500/sheet0?publish=yes)

## <a id="index" href="#index">目次</a>
* [はじめに](#section0)
* [年比較ダッシュボード作成の流れ](#section1)
* [準備：パラメータの作成](#section2)
* [手順①-1：表示値の選択ボタンのシート作成](#section3)
* [手順①-2：比較年の選択ボタンのシートを作成](#section4)
* [手順②：対象年のアイコンを作成](#section5)
* [手順③：チャートを作成](#section6)
* [手順④：手順①~③で作成したシートをもとにダッシュボード上でボタンフィルタを実装](#section7)
* [まとめ](#section8)

# <a id="section1" href="#section1">年比較ダッシュボード作成の流れ</a> 
準備：表示値パラメータ・比較年パラメータの作成
手順①-1：表示値の選択ボタンのシートを作成
手順①-2：比較年の選択ボタンのシートを作成
手順②：対象年のアイコンのシートを作成
手順③：チャートのシートを作成
手順④：①~③で作成したシートをもとにダッシュボード上でボタンフィルタを実装

①~③で部品を作って④でボタンがフィルタとして動作するように組み立てるイメージです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/53dd177d-0d7c-b61d-28a8-3f0463d794af.png)




<p class="ec__link-index"><a href="#index">[↑ 目次へ]</a></p>

# <a id="section2" href="#section2">準備：パラメータの作成</a>
表示値を選択する際に使用するパラメータと、比較年を選択する際に使用するパラメータの２種類を使用するので、準備として作成しておきます。

＜表示値選択パラメータ＞
データ型は文字列、リストに売上・利益・数量を設定したパラメータを作成

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/ee05428f-803c-05fe-22f1-078d32b4b24d.png" width="500">

＜比較年選択パラメータ＞
データ型は整数、リストに2013,2014,2015を設定したパラメータを作成

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/606e6ae3-1951-d073-69d2-e0a970354a7f.png" width="500">




<p class="ec__link-index"><a href="#index">[↑ 目次へ]</a></p>

# <a id="section3" href="#section3">手順①-1：表示値の選択ボタンのシート作成</a>
手順①ではボタンの側だけを作っていきます。
今回表示させたいのは「売上」、「利益」、「数量」の3種類とします。

＜ボタンのもととなる３つの棒を表示＞
* カテゴリを列に入れて、列でダブルクリックをして「MIN(1)」を作成
（※カテゴリを列に入れたのは項目が3種類であり、3つのボタンを作成するのに都合がよいためです。必ずしも"カテゴリ"である必要はありません）

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/6096312d-b3a8-3aa8-3e2a-4a6ec299e16f.png)

＜カテゴリの項目と売上・利益・数量の項目を紐づける＞
* 「表示値の選択肢」という計算フィールドを作成し、マークペインのラベルにドラッグアンドドロップ

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/58da0556-194b-e8e5-d55c-8ec2855887ca.png" width="300">

　
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/f4db8a09-891c-437a-9050-fe4b3a0ec0ac.png" width="300">


＜ボタンの成型＞
いくつかの操作でボタンの成型を行います。
* 軸の編集で表示範囲を0から1までにする

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/7df61288-75db-d552-0b49-cf55b10aa32c.png" width="500">

* ヘッダーの表示のチェックを外しヘッダーを非表示にする

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/3aabcca3-7a3b-0f7d-3631-4b10adab3069.png" width="300">


* 棒の幅を広げる

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/254a79fa-cfaa-6fca-4dfa-352d8158419c.png)

ここまでの操作により下写真のようになります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/66551f7e-3e82-e555-d9a6-4ab4671df04c.png)

さらに
* 文字の配置を中央にする
* 書式設定で列の境界線以外を「なし」にする
と下写真のようになります（だいぶボタンっぽくなりました！）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/e10336ab-f602-e2eb-e6cf-da84ebe4942f.png)

＜ツールヒントを非表示にする＞
ボタンにカーソルを当てたときにツールヒントが表示されないようにします。
* マークペインのツールヒントを開きツールヒントの表示のチェックを外す

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/cab854c1-31f4-8ff4-250e-90d377d909f1.png" width="500">



＜色を付ける＞
選択したものが瞬時にわかるように別の色で表示されるようにします。

* 「選択された表示値」という以下のような計算フィールドを作成しマークペインの色にドラッグアンドドロップ
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/24cf891d-7890-bf4b-f4a0-89018b2b6501.png" width="400">

すると下写真のようにパラメータで選択されている表示値がの色が変化します
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/37977213-0659-3131-b0d1-bd019d6d7997.png)

* 凡例を非表示にし色を変更
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/abbfb30a-564e-bd45-17f6-34b05e489068.png)

表示値選択ボタンの側が完成しました！




<p class="ec__link-index"><a href="#index">[↑ 目次へ]</a></p>

# <a id="section4" href="#section4">手順①-2：比較年の選択ボタンのシートを作成</a>
手順①-1と同様の流れで比較年選択ボタンの側だけ作成します。

＜ボタンのもととなる３つの棒を表示＞
* 比較年を表示させるために「比較年」という名前の以下のような計算フィールドを作成

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/16799ca6-1545-3240-6b08-88ef82758d3a.png)


* 比較年を列にドラッグアンドドロップし、NULLを非表示にする
* 列でダブルクリックし[MIN(1)」を作成

すると下写真のようになります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/de9ddad6-ec93-57dc-255f-e96c1a4238ba.png)

＜ボタンの成型＞
* 「比較年」をマークペインのラベルに入れ、手順①-1と同様に軸や書式を適当なものに変更

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/85d56cb2-d114-2cca-4f16-4a187723d336.png)

＜色を付ける＞
* 「選択された比較年」という以下のような計算フィールドを作成しマークペインの色にドラッグアンドドロップ

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/16201845-e414-d264-f564-03cc79c04050.png)

* 色を変更

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/3451f648-d419-817e-df4b-819e8b931db1.png)

比較年選択ボタンの側が完成です！
※ツールヒントは非表示にしましょう

<p class="ec__link-index"><a href="#index">[↑ 目次へ]</a></p>

# <a id="section5" href="#section5">手順②：対象年のアイコンを作成</a>
ダッシュボードで表示させる対象年のアイコンを作成します。（下写真の赤色の部分）
※今回対象年は2016年とします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/d368a179-854c-925b-7d88-5e004706733e.png)

* 列でダブルクリックし「MIN(1)」と入力
* オーダー日をフィルタに入れて2016年に絞る
* オーダー日をラベルにドラッグアンドドロップ

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/10ebf31e-8224-8576-459c-f70d71989f3c.png)

* 手順①と同様に軸や書式を適当なものに変更

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/23ae001d-fb64-c081-3409-59dd00137a8d.png)

アイコンが完成しました！

<p class="ec__link-index"><a href="#index">[↑ 目次へ]</a></p>

# <a id="section5" href="#section6">手順③：チャートを作成</a>
パラメータの値によって比較年、表示値が変化するチャートを作成します。

＜パラメータを考慮した計算フィールドの作成＞
ここでは、パラメータが〇〇のとき画面上で××を表示させる、といった記述の計算フィールドを作成します。
* 対象年（2016年）に対し「対象の年の値表示」という計算フィールドを作成

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/9dc5c5d3-ab67-51b7-74d1-b0fa30881691.png" width="300">


* 比較年（「比較年選択パラメータ」で選択）に対し「比較年の値表示」という計算フィールドを作成

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/b43c45a1-f3b2-0db5-0a84-03976e05a01b.png" width="380">

＜チャートの作成＞
* サブカテゴリを行、「対象の年の値表示」を列にドラッグアンドドロップ

* 「比較年の値表示」を横軸にドラッグアンドドロップ


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/9a2b3fbe-6d9c-46f6-9f76-9cbc0f3efa04.png)

* 対象年と比較年の棒グラフに色を付けるためにダミーの計算フィールドを作成し色にドラッグアンドドロップ

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/9db8e8bf-c3ed-22f6-1e06-f9321bd63a17.png" width="300">

* 色の変更や不要なヘッダーを非表示

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/c111c5b3-119c-b5f9-d62d-eb72a6c7fe6b.png)

チャートの完成です！


<p class="ec__link-index"><a href="#index">[↑ 目次へ]</a></p>

# <a id="section5" href="#section7">手順④：手順①~③で作成したシートをもとにダッシュボード上でボタンフィルタを実装
</a>
手順①~③で作成した計４つのシートからダッシュボードを作成します。
ダッシュボードの見た目を整えたのち、側だけ作成していたボタンが機能するように設定をします。

＜ダッシュボードの見た目を整える＞
* 2種類のボタンとアイコンを上側に配置し、幅や大きさを整える。
※このとき各シートを「ビュー全体」にすると縦の幅が揃うので便利です！

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/ab51487b-f5fc-89b2-9aff-396a761eefd7.png" width="400">

* シートタイトルをそれぞれ適切なものに変更する（フォントサイズは小さくする）

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/555c487c-58af-61d9-169e-1b4f0efc1129.png)
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー　
 　
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/36b399b2-3a80-89e6-8175-ac4d23e70956.png)

ダッシュボードの見た目が整いました！

＜ボタンを機能させる＞
ボタンを押下した際パラメータが変更されるように**パラメータアクション**を追加します。

パラメータアクションとは：アクション（カーソルを合わせたりクリックしたり）を行った際にパラメータの値が変更される機能

* ダッシュボード＞アクション＞アクションの追加＞パラメータの変更　でパラメータアクション作成画面に移動

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/aa6d0546-bca8-a2e5-3ec5-92f1fe5bf0b6.png" width="400">
　
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/90302432-c21f-61e0-b698-6bc927d0652e.png" width="300">


* 表示値の選択のパラメータアクションを作成
　ソースシート：表示値選択ボタンのシートを選択
　ターゲットパラメータ：表示値選択のパラメータを選択
　ソースフィールド：「表示値の選択肢」を選択　
　　※ソースフィールドによりターゲットパラメータにどの値を入れるかを定めるイメージ

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/fb6830f7-fa51-02f9-97e1-e813dc37e570.png" width="500">

* 比較年の選択のパラメータアクションを作成
　ソースシート：比較年の選択ボタンのシートを選択
　ターゲットパラメータ：比較年選択のパラメータを選択
　ソースフィールド：「比較年」を選択　

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/92c6eed6-7baa-5662-3d48-4181cacb50e4.png" width="500">

ボタンにフィルタ機能を追加することができました！

これで年度比較ダッシュボードの完成です！お疲れさまでした。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3914542/46b27c30-2eb8-fd13-74f4-0c54523d668e.png)
<p class="ec__link-index"><a href="#index">[↑ 目次へ]</a></p>

# <a id="section5" href="#section8">まとめ</a>
今回はフィルタボタンによる視認性に優れた年比較ダッシュボードを作成しました。
フィルタボタンは様々な場面で利用できるためぜひ活用してみてください！

※本ダッシュボードは#WOW2023 | Week 48 | Can you add candlesticks to bar charts?を参考にしています。⇒https://workout-wednesday.com/2023w48tab/

<p class="ec__link-index"><a href="#index">[↑ 目次へ]</a></p>