スパークラインチャートについて~応用編~

スパークラインチャートについて~応用編~

今回は、スパークラインチャートの応用的な部分について紹介していきます。

前回、基礎編として、シンプルなスパークラインチャートについて説明をしましたが、そこから少し発展させてみたいと思います。

基礎編で紹介した地域ごとの月別売上推移をベースとして、以下の5つのポイントについて具体的に作成しながら説明をしていきます。

  • ドットインジケーターの追加

 直近月の売上をドット表示し、指標として目立たせます。

  • 前月増減比較色分けドットインジケーターの追加

 前月と比較して、増減によってドットを色分けします。

  • 代表値の表示

 売上の直近値、最大値、最小値をラベル表示します。

  • 代表値(最大値、最小値)の表示有無の切り替え

 ラベル表示をリスト上の選択で切り替えれるようします。

  • 代表値のオーバーラップの回避

 ラベルを折れ線グラフに重ならないようにします。

なお、すべてのVizは、サンプルデータであるスーパーストアの「Orders」シートをもとに作成することとします。

ベースとなるスパークラインチャートの作成

前回を参考に、地域ごとの月別売上推移の作成します。

スパークラインチャートについて~基礎編~

次の流れで地域ごとの月別売上推移を編集し、ベースを作成していきます。

  1. 「Order Date」をフィルターシェルフに入れます。
  2. フィールドのフィルター画面が表示されるので、「日付の範囲」を選択し、「次へ」ボタンを押します。
  3. フィルター画面が表示されるので、そのまま「OK」ボタンを押します。
  4. フィルターシェルフにある「Order Date」を右クリックして、「フィルターを表示」を選択します。
  5. Viz上で右クリックして、「書式設定」を選択します。
  6. 線の書式設定にて、シートのゼロラインを「点線」に変更し、線の書式設定を閉じます。
ベースとなるスパークラインチャートの作成を説明する画像

ドットインジケーターの追加

計算フィールドの作成

以下の計算フィールドを作成します。

  • 名前:Dot Indicator
IF LAST()=0 THEN SUM([Sales]) END

「Dot Indicator」は、直近月の売上を示します。ドットインジケーターを表現するのに使用します。

ワークシートの編集

次の流れでワークシートを編集していきます。

  1. 「Dot Indicator」を行シェルフにある「合計(Sales)」の右側に入れます。
  2. 行シェルフにある「Dot Indicator」を右クリックして、「二重軸」を選択します。
  3. Viz上で「Dot Indicator」の縦軸を右クリックして、「軸の同期」を選択します。
ドットインジケーターの追加:ワークシートの編集を説明する画像

ワークシートの微調整

次の流れでワークシートの微調整をしていきます。

  1. 行シェルフにある「Dot Indicator」を右クリックして、「ヘッダーの表示」のチェックを外します。
  2. 「メジャーネーム」凡例カードの「▼」を左クリックし、「色の編集」を選択します。
  3. 色の編集画面が表示されるので、それぞれ、色を選択し、「OK」ボタンを押します。
  4. 「メジャーネーム」凡例カードの「▼」を左クリックし、「カードの非表示」を選択します。
  5. 「Dot IndicatorΔ」マークパネルのマークタイプを「円」に変更します。
  6. 「Dot IndicatorΔ」マークパネルのサイズを左クリックして、サイズを調整します。
  7. シートの名前を「地域ごとの月別売上推移 スパークラインチャート with ドットインジケーター」に変更します。
ドットインジケーターの追加:ワークシートの微調整を説明する画像

ドットインジケーター付きスパークラインチャートの完成

これで、地域ごとの月別売上推移のドットインジケーター付きスパークラインチャートの完成です。前月の売上がオレンジ色の点(ドット)になり、目につきやすくなっています。

ドットインジケーター付きスパークラインチャートの完成を説明する画像

Tableau Publicのリンクを貼っています。

前月増減比較色分けドットインジケーターの追加

計算フィールドの作成

以下の計算フィールドを作成します。

  • 名前:MoM Sales Color Flag
WINDOW_MAX(IF LAST() = 0 THEN SUM([Sales]) END)
>
WINDOW_MAX(IF LAST() = 1 THEN SUM([Sales]) END)

「MoM Sales Color Flag」は、直近月の売上とその前月の売上を比較するフラグを示します。ドットインジケーターの色を変えるのに使用します。

ワークシートの編集

次の流れでワークシートを編集していきます。

  1. シート「地域ごとの月別売上推移 スパークラインチャート with ドットインジケーター」を右クリックして、「複製」を選択します。
  2. シート「地域ごとの月別売上推移 スパークラインチャート with ドットインジケーター (2)」が作成されるので、これから、このシートを編集していきます。
  3. 「MoM Sales Color Flag」を「Dot IndicatorΔ」マークパネルの色に入れます。
前月増減比較色分けドットインジケーターの追加:ワークシートの編集を説明する画像

ワークシートの微調整

次の流れでワークシートの微調整をしていきます。

  1. 「集計(MoM Sales Color Flag)」凡例カードの「▼」を左クリックし、「色の編集」を選択します。
  2. 色の編集画面が表示されるので、それぞれ、色を選択し、「OK」ボタンを押します。
  3. 「集計(MoM Sales Color Flag)」凡例カードの「▼」を左クリックし、「カードの非表示」を選択します。
  4. シートの名前を「地域ごとの月別売上推移 スパークラインチャート with 前月増減比較色分けドットインジケーター」に変更します。
前月増減比較色分けドットインジケーターの追加:ワークシートの微調整を説明する画像

前月増減比較色分けドットインジケーター付きスパークラインチャートの完成

これで、地域ごとの月別売上推移の前月増減比較色分けドットインジケーター付きスパークラインチャートの完成です。点(ドット)の色が、前月の売上よりも上の場合には、緑色に、下の場合には、赤色になっています。

前月増減比較色分けドットインジケーター付きスパークラインチャートの完成を説明する画像

Tableau Publicのリンクを貼っています。

代表値の表示

計算フィールドの作成

以下の計算フィールドを作成します。

  • 名前:Min/Max Sales Label
IF SUM([Sales]) = WINDOW_MAX(SUM([Sales]))
THEN SUM([Sales])
ELSEIF  SUM([Sales]) = WINDOW_MIN(SUM([Sales]))
THEN SUM([Sales]) END

「Min/Max Sales Label」は、売上の最大値と最小値を示します。ラベルを表示するのに使用します。

ワークシートの編集

次の流れでワークシートを編集していきます。

  1. シート「地域ごとの月別売上推移 スパークラインチャート with 前月増減比較色分けドットインジケーター」を右クリックして、「複製」を選択します。
  2. シート「地域ごとの月別売上推移 スパークラインチャート with 前月増減比較色分けドットインジケーター (2)」が作成されるので、これから、このシートを編集していきます。
  3. 「Min/Max Sales Label」を「合計(Sales)」マークパネルのラベルに入れます。
  4. 「Dot IndicatorΔ」マークパネルのラベルを左クリックして、「マークラベルを表示」にチェックを入れます。
  5. シートの名前を「地域ごとの月別売上推移 スパークラインチャート with 代表値の表示」に変更します。
代表値の表示:ワークシートの編集を説明する画像

代表値の表示付きスパークラインチャートの完成

これで、地域ごとの月別売上推移の代表値の表示付きスパークラインチャートの完成です。売上の直近値、最大値、最小値がそれぞれラベル表示されています。

代表値の表示付きスパークラインチャートの完成を説明する画像

Tableau Publicのリンクを貼っています。

代表値の表示有無の切り替え

パラメーターの作成

以下のパラメーターを作成します。

名前:Min/Max
【プロパティ】
データ型:文字列
許容値:リスト
値、表示名(1行目):ともに「Show」
値、表示名(2行目):ともに「Hide」

計算フィールドの作成

以下の計算フィールドを作成します。

  • 名前:Show/Hide Min/Max Sales Label
CASE [Min/Max]
WHEN "Show" THEN [Min/Max Sales Label]
END

「Show/Hide Min/Max Sales Label」は、売上の最大値と最小値を示しており、パラメーターが「Show」の場合のみ有効になります。リストにて「Show」を選択した場合のみ、ラベルが表示されるようにするのに使用します。

ワークシートの編集

次の流れでワークシートを編集していきます。

  1. シート「地域ごとの月別売上推移 スパークラインチャート with 前月増減比較色分けドットインジケーター」を右クリックして、「複製」を選択します。
  2. シート「地域ごとの月別売上推移 スパークラインチャート with 前月増減比較色分けドットインジケーター (2)」が作成されるので、これから、このシートを編集していきます。
  3. 「Show/Hide Min/Max Sales Label」を「合計(Sales )」マークパネルのラベルに入れます。
  4. データペインにあるパラメーターの「Min/Max」を右クリックして、「パラメーターの表示」を選択します。
  5. シートの名前を「地域ごとの月別売上推移 スパークラインチャート with 代表値の表示有無の切り替え」に変更します。
代表値の表示有無の切り替え:ワークシートの編集を説明する画像

代表値の表示有無の切り替え付きスパークラインチャートの完成

これで、地域ごとの月別売上推移の代表値(最大値、最小値)表示有無の切り替え付きスパークラインチャートの完成です。

代表値の表示有無の切り替え付きスパークラインチャートの完成を説明する画像

Tableau Publicのリンクを貼っています。

また、リスト上にて「Hide」を選択すると、以下の通り、売上の最大値、最小値が非表示になります。

代表値の表示有無の切り替え付きスパークラインチャートの完成(非表示)を説明する画像

Tableau Publicのリンクを貼っています。

代表値のオーバーラップの回避

計算フィールドの作成

以下の計算フィールドを作成します。

  • 名前:Reference Line Max
WINDOW_MAX(SUM([Sales])) * 1.5

「Reference Line Max」は、売上の最大値を1.5倍した値を示します。この値をもとにリファレンスラインを追加することで、売上の最大値のラベルを表示するためのスペースを確保します。

  • 名前:Reference Line Min
WINDOW_MIN(SUM([Sales])) * -10

「Reference Line Min」は、売上の最小値を‐10倍した値を示します。この値をもとにリファレンスラインを追加することで、売上の最小値のラベルを表示するためのスペースを確保します。

ワークシートの編集

次の流れでワークシートを編集していきます。

  1. シート「地域ごとの月別売上推移 スパークラインチャート with 代表値の表示有無の切り替え」を右クリックして、「複製」を選択します。
  2. シート「地域ごとの月別売上推移 スパークラインチャート with 代表値の表示有無の切り替え (2)」が作成されるので、これから、このシートを編集していきます。
  3. 「Reference Line Max」、および、「Reference Line Min」を、「合計(Sales )」マークパネルの詳細に入れます。
  4. 行シェルフにある「合計(Sales )」を右クリックして、「ヘッダーの表示」にチェックを入れます。
  5. Viz上で、「Sales 」の縦軸を右クリックして、「リファレンスラインの追加」を選択します。
  6. リファレンスライン、バンド、またはボックスの追加画面が表示されるので、以下の通り、設定し、「OK」ボタンを押します。
リファレンスライン、バンド、またはボックスの追加画面(リファレンスライン最大値)を説明する画像
  1. 再び、リファレンスライン、バンド、またはボックスの追加画面が表示されるので、以下の通り、設定し、「OK」ボタンを押します。
リファレンスライン、バンド、またはボックスの追加画面(リファレンスライン最小値)を説明する画像
  1. 行シェルフにある「合計(Sales )」を右クリックして、「ヘッダーの表示」のチェックを外します。
  2. シートの名前を「地域ごとの月別売上推移 スパークラインチャート with 代表値のオーバーラップの回避」に変更します。
代表値のオーバーラップの回避:ワークシートの編集を説明する画像

代表値のオーバーラップを回避したスパークラインチャートの完成

これで、地域ごとの月別売上推移の代表値のオーバーラップを回避したスパークラインチャートの完成です。売上の最大値、および、最小値のラベルが折れ線グラフに重ならないようになっています。

代表値のオーバーラップを回避したスパークラインチャートの完成を説明する画像

Tableau Publicのリンクを貼っています。