🌐

Tableauでマップを使って会計データから損益分岐点売上高を可視化する

に公開

はじめに

会計の損益分岐点分析をどう可視化するか。

Tableauで表現しようとすると、意外と悩ましいテーマです。
売上と費用を時系列で重ねる、累計で描く、リファレンスラインを引く・・・
よくある手法は一通り試せますが、しっくりとはいきません。

損益分岐点そのものは「実績として行に存在する値」ではありません。
横軸に置くためのディメンションもなく、行が存在しない値を、どうやって表現するのかという問題にぶつかります。

しばらくの間、Tableau上でさまざまな表現を試していましたが、あるとき考え方を切り替えました。

損益分岐点を「グラフ」として描こうとするから難しいのでは?

だったら、マップを使えばいいではないか!

Tableauが持つ地理的レイヤー「地図を描くための機能」を、あえて座標系として使います。
座標ベースの表現を使えば、売上と損益分岐点の関係を、数値や線ではなく「位置関係」として表現できます。
このアプローチにより、固定費・変動費・売上高・損益分岐点売上高といった要素の関係を、一つの図として、視覚的に捉えることが可能になります。

この記事では、会計データをもとにTableauで損益分岐点を表現するための一つの実装パターンをご紹介します。

(損益分岐点売上高の説明や、それが何を意味するのか、などは、多くのブログがあるので今回は説明しません)

サンプルデータ

サンプルデータは、ChatGPTに作成してもらったものを使用します。
会計データを想定しているため、勘定科目ごとに1行が存在する縦持ちデータです。

この時点で、どの勘定科目を「固定費」とし、どれを「変動費」とするかをあらかじめ定義しておきます。

これはTableauの可視化以前に、損益分岐点分析そのものの前提になります。

計算式

まずは、損益分岐点を求めるための基礎となる会計数値を計算します。
ここでは、以下の値を用意します。

  • 売上高
  • 固定費
  • 変動費
  • 損益分岐点売上高

売上・固定費・変動費

データは勘定科目ごとに行が分かれているため、売上・固定費・変動費は IF 文で切り分けて集計します。

// 売上
SUM(IF [費用区分]='売上' THEN [金額] END)
 
// 固定費
SUM(IF [費用区分]='固定費' THEN [金額]END)

// 変動費
SUM(IF [費用区分]='変動費' THEN [金額]END)

損益分岐点売上高

一気に計算してもよいのですが、わかりやすさ重視で、限界利益を求めてから計算します。

// 限界利益
[売上]-[変動費]

// 限界利益率
[限界利益]/[売上]

// 損益分岐点売上高
[固定費]/[限界利益率]

ここまでが、いわゆる会計としての損益分岐点計算です。

以降は、この数値を「どう描くか」という話になります。

相対座標の定義

ここからが今回のポイントです。

マップを使う場合、必要なのは正確な金額ではなく、「どの値がどの位置にあるか」という相対的な関係です。
そこで、売上を基準(=1)とする座標系を作ります。

// SCALE
1

// SCALE倍率
[SCALE]/[売上]  //売上を基準とする

// SCALE増加率
1.5
  • SCALE:基準となる値(今回は1)
  • SCALE倍率:実際の金額を、売上を基準にした比率へ変換するための係数
  • SCALE増加率:売上の先まで線を伸ばすための調整値(売上の1.5倍の長さで線をひくことになります。)

これらを使って、すべての値を「売上に対する比率」として扱うようにします。

売上、損益分岐点の点(MAKEPOINT)

売上と損益分岐点のポイントを「MAKEPOINT」で作成します。

// 売上POINT
MAKEPOINT([SCALE],[SCALE])

// 損益分岐POINT
MAKEPOINT([損益分岐点売上高]*[SCALE倍率],[損益分岐点売上高]*[SCALE倍率])

売上、固定費、変動費の線(MAKELINE)

各ラインの開始点と終了点を「MAKEPOINT」で定義し、それぞれ「MAKELINE」で線にしていきます。

// 売上始点
MAKEPOINT(0,0)
// 売上終点
MAKEPOINT([SCALE]*[SCALE増加率],[SCALE]*[SCALE増加率])
// 売上LINE
MAKELINE([売上始点],[売上終点])
// 固定費始点
MAKEPOINT([固定費]*[SCALE倍率],0)
// 固定費終点
MAKEPOINT([固定費]*[SCALE倍率],[SCALE]*[SCALE増加率])
// 固定費LINE
MAKELINE([固定費始点],[固定費終点])
// 変動費始点 (固定費始点からスタート)
MAKEPOINT([固定費]*[SCALE倍率],0)
// 変動費終点
MAKEPOINT(([固定費]+[変動費]*[SCALE増加率])*[SCALE倍率],[SCALE]*[SCALE増加率])
// 変動費LINE
MAKELINE([変動費始点],[変動費終点])

Vizの作成

作成手順

作成した点と線を、地理的レイヤー上に重ねて表示します。

点は、マークを「円」とし、それぞれに色を付けて、損益分岐点がわかりやすくなるようにします。

拡大すると、実は地図です。
緯度経度で0地点なので、アフリカの赤道直下になります。

メニューの「マップ」→「バックグラウンドレイヤー」からチェックをすべてはずして、背景や文字は消しておきます。

さらに、メニューの「マップ」→「地図のオプション」からチェックをすべてはずし、拡大縮小などはできないようにします。

完成したViz

ラベルなどを設定して完成です。
フィルターを操作して、製品や年月ごとに確認することができるようになっています。

https://public.tableau.com/app/profile/oqbn/viz/tableau-breakeven-analysis/BEP

ここから読み解けることは以下のような情報となります。

  • 現在の売上が、損益分岐点を超えているかどうか
  • 売上に対して、固定費と変動費がどの位置にあるか
  • 売上がどれくらい伸びれば黒字化するのか

おまけ

MAKELINEなので、SCALEをあげると曲線になります・・・

まとめ

今回のVizは、「損益分岐点を計算する」のではなく、「損益分岐点を視覚的に理解する」ためのVizとして作成しました。
損益分岐点を、売上・固定費・変動費の関係性として表しています。

Tableauのマップ表現を利用することで、

  • 行が存在しない数値
  • 横軸を持たない概念
  • 会計的には正しいが描きづらい指標

を可視化することができました。

一つの実装例として、ご参考になればと思います。

Discussion