Tableau

Tableauで見たい期間のみの昨年対比推移グラフを作る方法

「ある数値の推移に加えて、昨年対比の推移も同時に表示したい」というのは、Tableauで良くある事です。

「昨年対比の推移のグラフも同時に」というのは、面倒そうに見えますがデータマートなり中間テーブルを作らずとも、少し工夫すれば作成が可能です。

今回はTableauのみで「見たい期間だけの昨対比推移グラフ」を作る方法をご紹介します。

完成形イメージ


昨年対比の推移を表現する時にぶつかる課題

「昨年対比の推移をグラフにしたい」とした時に、ぶつかる課題としては大きく以下の2点があるかと思います。

課題① 連続型の日付データだと、表計算「前年比」が使用できない

連続型の日付データを用いて、ある指標の推移グラフを作成する時は、表計算「前年比成長率」を使用できません。


以下の様に、日付を「不連続型」として扱えば「前年比成長率」は使用できます。


しかしあくまで「不連続型」として日付データを扱っているので、軸を2019/1/1,2019/1/2,・・・・・・・2020/1/1という形には出来ません。

課題② 表計算を使うと、フィルターで見たい期間を絞り込む事が出来ない

また、Tableauにおける表計算とは「シートで集計された後に計算する」関数です。

ですので「シートで集計する」前にデータを絞り込むフィルターで見たい期間のみにしてしまうとと、「前年比成長率」は表示されません。

「前年比成長率」の表計算をするにも、計算対象となる前年のデータがシート上に存在しないんですね。

“WINDOW_SUM関数”と”True/False”を組み合わせて「見たい期間だけの昨対比推移グラフ」を作る

以上を踏まえると「見たい期間だけの昨対比推移グラフ」を作る為には、以下の2点を満たす必要があります。

  • 日付は「連続型」として扱う
  • 見たい期間だけを見る時フィルターは使用しない

これらの条件を満たし、「見たい期間だけの昨対比推移グラフ」を作るやり方として私が思い付いたのは以下の通りです。

手順① WINDOW_SUM関数を使い、366個前の値を取得する

まず、丁度1年前の値を取得する為にWINDOW_SUM関数を作成します。

この関数は、

WINDOW_SUM(計算式, 開始, 終了) 

の形式で記述し、指定された範囲(開始、終了)にある値の計算値を返します。
そして「開始,終了」に入れる値としては

  • 0:現在の位置を返す
  • 1:現在の位置から1つ先
  • 1:現在の位置から1つ前

となります。ですので、

WINDOW_SUM(SUM(売上), -366, -366) 

とすれば、「現在の位置から-366前、つまり去年の同日の売上の値」を返すと指定できます。

WINDOW_SUM関数を使って計算フィールドにより、前年の値が今年の値と上手く同時に表示できました。


あとは、前年比を示す計算フィールドを以下の様に作成します。

今年の値/去年の値 

これで無事「昨年対比の推移」を作成できました。


手順② True/Falseと非表示を組み合わせてフィルター代わりにする

次に①で作成した「昨年対比の推移」を任意の期間だけを表示される様にします。
前述の通り、WINDOW_SUMは表計算であるのでフィルターを使うことが出来ません。

ここでは代替案として、以下を行う事で「データは絞り込まないが、見た目上は絞り込んでいる様に見える」という事が実現します。

  • 「True/False」で「任意の期間か否か」で区別する
  • Falseのデータを非表示にする

まず、「任意の期間かどうか」を判定する計算フィールドを作成します。

ここでは「2020/1/1から2020/12/31」を見たい期間とし「True」と判定、それ以外の期間は「False」と判定されます。

作成した計算フィールドを「属性」として「色」に配置すると、見たい期間と見ない期間に綺麗に区別できます。

次に「False=見ない期間」と判別されたものを「非表示」にします。

すると、見たい期間のみで「昨年対比の推移」を作成することが出来ました。

後は見た目を見やすく調整したら完成です。

まとめ

まとめると「見たい期間だけの昨対比推移グラフ」を作るには、

  • WINDOW_SUMで1年前の値を取ってくる
  • 任意の期間かどうかをTrue/Falseで判別する
  • Falseを非表示にする

の手順を踏むと実現可能です。是非使って見て下さい。

ピックアップ記事

  1. 最速で理解したい人のためのIT用語集

関連記事

  1. Tableau

    Tableau:分かりやすいLOD – INCLUDE編

    エクスチュア渡部です。今回はLODブログの第3弾です。INCLUD…

  2. Tableau

    Tableau:2つの値の比較に便利な「ダンベルチャート」を作る

    こんにちは、エクスチュア渡部です。今回は2つの値を比較するときに便…

  3. Tableau

    最年少DATA Saberになって感じたこと〜Tableau〜

    【目次】・自己紹介・DATA Saberとは・DATA Sabe…

  4. Tableau

    Tableauのモデリング関数を理解する

    モデリング関数とはモデリング関数とはDesktop 2020.3でリ…

  5. Tableau

    Tableau:分かりやすいLOD-FIXED編

    こんにちは、エクスチュアの渡部です。LODブログ第二弾です。今回は…

  6. Tableau

    TableauでTreasure Data上のデータへ接続する方法(2019/10/02時点)

    ※こちらの記事は過去の手順です。新しい手順についてはこちらの記事を参…

最近の記事

  1. 回帰分析はかく語りき Part2 重回帰分析
  2. 第14回関西DB勉強会-Snowflake Summit参加…
  3. Open Interpreter+VScode+Docker…
  4. LangChainって何?: 次世代AIアプリケーション構築…
  5. 回帰分析はかく語りき Part1 単回帰分析
  1. KARTE

    KARTE:指定期間の来訪が再訪問の場合にスコアリングする
  2. IT用語集

    【完全版】Tableau(タブロー)って何?
  3. Google Cloud Platform

    GoogleNext 2019レポート:2日目
  4. Firebase Analytics

    GoogleAnalytics Apps+Web プロパティをBigQueryと…
  5. Google Cloud Platform

    Looker: サンバーストグラフを使って階層データを可視化する
PAGE TOP