見出し画像

Tableauで前月比を表示する方法

Tableau を使用して店舗の売上や利益などを分かりやすく表現しようとする際に、比較するための前月比などを表示したい!というシチュエーションは結構あるのではないでしょうか。

今回はそんな時のための前月比を出す方法をご紹介します。
最終的に作成したダッシュボードがこちらです。
(データの中身は適当に作成したダミーデータです。Chat GPTに作ってもらいました笑)

このvizはこちらから見れます。

今回はこちらのダッシュボード上部に表示されている売上とその前月比の表示の仕方を解説します。主に使うデータ項目としては売上、日付(購入日)があればできます。

■必要なデータとその構成
まず前月比がどのように構成されているかから考えましょう。
前月比というのは、対象の月の売上が前月と比較してどのくらい上がっている/下がっているのかですね。なので以下のようになっていると思います。

前月比=対象月の売上 ÷ 前月の売上 

ということで前月比を作成するために必要になってくるのが「該当月の売上」と「前月の売上」、該当月を選択するフィルタということがわかります。
まずは該当月を選択するフィルタから作りましょう。

■対象月選択フィルタの作成
こちらはパラメーターを使用します。
以下のように作成して対象月を選択する際のフィルタを作ります。
※ここでデータ型を「文字列」にして、初めから1月、2月という形にしてもいいのですが、「整数」にしてあげることでTableau の内部処理が少し早くなります。(Tableauは数値を処理する方が得意)

■「対象月の売上」の作成
次は「対象月の売上」を計算フィールドを使って以下のように作成します。

IF [対象月選択] = DATEPART('month', [日付])
THEN [売上] END

Datepartというのは指定された日付の値を返す式です。
ここでは「日付」というデータ項目から月に当たる数値を返して欲しいというようになってます。
またIf文を使うことで、もし「対象月選択」(先ほど作成したパラメータ)で選択した月と「日付」の月が同じだったら、その月の売上を出す。というようになってます。
これによってパラメータで選択した月の売上を出すことができます。

■「前月の売上」の作成
次に「前月の売上」を計算フィールドを使って以下のように作成します。

IF DATEPART('month', [日付]) = [対象月選択]-1
THEN[売上] ELSE 0
END

ほとんど「対象月の売上」の式と変わらないが2箇所だけ異なります。
まず、先ほどの式との違いは「対象月選択」後ろに「−1」があることです。
これは対象月選択で選ばれた月の1ヶ月前をさします。
ですので式全体で見ると、「対象月選択」で選択された月の前の月と一致する「日付」の月、つまり前月の売上を返して欲しいという式になります。

次に「Else 0」は先ほどの式にはありませんでした。
なぜ必要かというと、データがある初めの月には前月が存在しないからです。ですので初月を選んだ場合は0を返しましょう、というようになってます。

■「前月比」の作成
ここまできたら前月比を出す準備が整いましたね。
初めに確認した通り前月比は以下の式でできます。
前月比=対象月の売上 ÷ 前月の売上 
ですのでここまで作成してきたものを組み合わせて以下のような式になります。(今回は%で表現したいのでX100をしています。)

SUM([対象月の売上])/SUM([前月の売上])*100

あとは表示したいものをテキストに入れるだけ。
「テキスト」をクリックして単位などを加えてもいいですね。

以上。

■おまけ
この売上の横の矢印の作り方。
これは前月比に応じてのup/downを表現してます。

作るのは簡単
売上が上がったのか下がったのかを示すための『売上updown』式を以下のように作成します。

STR(IF [前月比(%)]>=100 then 'up'
ELSE 'down'
END)

これは前月比が100を超えたらup そうでなかったらdownを返すという式です。
作成できたらこれを形状に入れて、up/downに合わせて矢印をはめるだけ。
色にも入れてあげることで任意の色に変更できます。

作成したVizはこちらから見れます。
以上、よかったら参考にしてください。


この記事が気に入ったらサポートをしてみませんか?