SFA管理者の日常

salesforceとtableau関連の記録

バンプチャートで理解する表計算

バンプチャートとは

バンプチャートというグラフがあります。 縦軸に順位(ランキング)、横軸に時系列をおいたグラフです。

カテゴリと年(オーダー日)の売上バンプチャート

ランキングの推移を見るときに便利です。

この記事ではこのバンプチャートを作りながら、tableauにおける表計算について解説します。

バンプチャート作成手順

まずは大まかなバンプチャートの作成手順を示します。

(1)列にオーダー日(年)、行に売上をドロップし折れ線グラフを作る

(2)カテゴリを色にドロップし折れ線を3つに分ける

(3)売上を簡易表計算からランクを選択

(4)「次を使用して計算:」から「カテゴリ」を選択

(5)売上(ランク)をコピーして、1つの目のマークを円にする

(6)2重軸にする

(7)ランクをラベルに表示する(位置が円の中に来るように調整)

(8)軸を同期して反転する

はい。これで完成です。

表計算について

私がこの手順の中で最初よくわからなかったのが

(4)「次を使用して計算:」から「カテゴリ」を選択

です。 なぜこの操作が必要なのか、この操作はどういう意味を持つのかを考えてみます。

あらためてこの操作の前後の見た目を確認します。

まずは最初にランクを選択したときに発生する挙動

簡易表計算からランクを選択した後

ぐちゃぐちゃしてよく分からない線になっています。

これをカテゴリを選択するときれいに表示されます。

次を使用して計算からカテゴリを選択後

何が変わったのでしょうか。

バンプチャートはディメンションが2種類あるのがポイントです。

年(オーダー日)とカテゴリの2種類。

年(オーダー日)はこの4つです

  • 2018
  • 2019
  • 2020
  • 2021

カテゴリはこの3つです

  • 家具
  • 家電
  • 事務用品

組み合わせは4x3で12個になります。

この中でどの軸でランクをつけるのかをtableauに教えてあげなければいけません。

  • カテゴリのランキングなのか
  • 年(オーダー日)のランキングなのか、
  • はたまたカテゴリと年(オーダー日)の全部の要素の中でランク付けするのか

それを指定するのが「次を使用して計算」です。

ディメンションが1つであればあまり気にする必要はありません。
たとえばカテゴリしか指定がなかったら、
家電が1位、家具が2位~のようにカテゴリのランキングだということは明確です。
(しいていえば売上が高い順か低い順かぐらいでしょうか)

「次を使用して計算」による動きの変化

tableauには表計算アシスタントという機能があるので、それで違いを見てみましょう

年(オーダー日)で計算した場合

年(オーダー日)で計算した場合のイメージ

ランキング
1位 2021年
2位 2019年
3位 2020年
4位 2018年

見たいのはこのランキングじゃないですね。

「カテゴリ」で計算した場合

カテゴリで計算した場合のイメージ

ランキング カテゴリ
1位 家電
2位 家具
3位 事務用品

見たいのはこのランキングですね。

このようにどのディメンションごとにランキングを出すのかを指定するのかが「次を使用して計算」です。

index()を使った例

今まではランキングでしたが、今度はindex()関数を使って確認してみます。

index()とは

表計算関数 - Tableau

要はindex()とは、表に1から順番に番号を振ってくれる関数です。

年(オーダー日)を列に、カテゴリを行に、index()をマークラベルに配置します

計算に年(オーダー日)を選んだ場合

計算にカテゴリを選んだ場合

計算に年(オーダー日)とカテゴリ両方選んだ場合

このように指定するディメンションによって番号の振られ方が変わってきます。

カテゴリを変えると赤くなる理由

今回はカテゴリでランキングを作りましたが、異なる切り口でバンプチャートを作り直したくなることもあると思います。

試しにカテゴリをサブカテゴリに変更してみましょう。

サブカテゴリをマークの色にドロップ

するとエラーが発生してしまいました。

赤いところがエラー

カテゴリ単位のバンプチャートをサブカテゴリ単位にしたいだけなのに、なぜ合計(売上)ランクがエラーになるのでしょう

そうです。ランクの計算に「カテゴリ」を使っているからです。

カテゴリの文字が赤くなっている

これらの表計算のディメンションもすべてカテゴリからサブカテゴリに変更してあげる必要があります。

カテゴリのチェックをサブカテゴリに変更

修正したら無事にサブカテゴリのバンプチャートになりました。

サブカテゴリ多いので事務用品カテゴリに絞っています

【表(横)や表(下)について】
今回あえて省きましたが、ディメンションでの計算ではなく、
表計算では「表(横)」や「表(下)」なども選択することができます。
たとえば「表(下)」は文字通り表を下方向に向けて計算します。

「表(下)」と「カテゴリ」はこの例だと計算順番は同じです。
ただし表(下)はディメンションに依存していないので、
カテゴリをサブカテゴリに変更してもエラーになりません。

終わりに

以上、バンプチャートで理解する表計算でした。

表計算はtableauの中でもややこしい分野ですが、実際にバンプチャートというグラフを作り試行錯誤することで理解が深まりました。

今回の記事が表計算について悩んでいる方の助けになれば幸いです。