【保存版】Tableauの「色分け」を条件式で思いどおりにする方法

「Tableauで条件に応じて色分けしたい」「Excelの条件付き書式のように閾値で色を変えたい」——そんなニーズに対して、Tableauでは“条件式+色シェルフ(Color)”で柔軟に実現します。本記事は、基本〜実務で使う応用パターン、つまずきやすいポイント、色の設計のベストプラクティスまでを、理解しやすさ最優先で網羅的に解説します。


1. 前提:Excelの「条件付き書式」とTableauの違い

  • Excel:セル単位に条件を設定し、背景色を変えるイメージ。

  • Tableau:“計算フィールド(条件式)でカテゴリや状態を作り、それをColorシェルフに置く”のが基本。

  • つまり、色は「数値そのもの」ではなく、「条件の結果(ディメンションや文字列)」に紐付けるのが王道です。数値のグラデーション(連続色)も可能ですが、実務では**「達成/未達」「増加/減少」「危険/注意/安全」といった離散的な状態で色分け**する場面が多いです。


2. 一番やさしい手順(5ステップ)

  1. 条件式の計算フィールドを作る
    例:売上が目標以上なら「達成」、未満なら「未達」

    IF SUM([Sales]) >= SUM([Target]) THEN "達成" ELSE "未達" END

    集計の整合がポイント(後述)。

  2. 作成した計算フィールドをMarks(マーク)カード → Colorにドラッグ。

  3. 色の編集(凡例を右クリック → 色の編集)。ブランドカラーや見やすい配色に変更。

  4. ラベルやツールチップも整え、「なぜその色なのか」が一目で伝わるように補助情報を加える。

  5. ダッシュボードで凡例(色)を表示し、説明文や注釈を添えて共有。


3. 基本の条件式レシピ(コピペで使える)

3-1. 達成/未達(2値)

IIF(SUM([Sales]) >= SUM([Target]), "達成", "未達")
  • IIFは1行で書けて読みやすい。NULLがあり得る場合はZN()で0埋めすると安全です。

IIF(ZN(SUM([Sales])) >= ZN(SUM([Target])), "達成", "未達")

3-2. 増加/減少(前期比)

月ごとの売上が前月より増えたら緑、減ったら赤など。

IF SUM([Sales]) - LOOKUP(SUM([Sales]), -1) >= 0 THEN "増加" ELSE "減少" END
  • これはテーブル計算を含むため、**アドレッシング(計算の方向)**を月の並びに合わせて調整します(表計算の編集で設定)。

3-3. 範囲別(3〜5段階)

IF SUM([Profit]) < 0 THEN "赤字"
ELSEIF SUM([Profit]) < 1000000 THEN "小幅黒字"
ELSE "好調"
END

3-4. CASEでスッキリ(TRUE()パターン)

階層が増えるとIF/ELSEIFは長くなりがち。CASE TRUE()で読みやすく。

CASE TRUE()
WHEN SUM([Margin]) < 0 THEN "赤字"
WHEN SUM([Margin]) < 0.1 THEN "薄利"
ELSE "標準以上"
END

3-5. NULLを明示的に扱う

IF ISNULL(SUM([Stock])) THEN "データ未入荷"
ELSEIF SUM([Stock]) < SUM([Safety Stock]) THEN "要補充"
ELSE "充足"
END

3-6. 目標をパラメータでユーザー入力化

  1. 数値パラメータ [しきい値] を作成

  2. 色分け式:

IF SUM([Sales]) >= [しきい値] THEN "しきい値以上" ELSE "しきい値未満" END
  • パラメータアクションでダッシュボード上から閾値を直接調整できるようにすると、現場の探索が加速します。


4. 連続色(グラデーション)と「段階あり」の使い分け

  • 連続色(グラデーション):分布の“強弱”を直感的に見たいとき。ヒートマップや地図の濃淡に有効。

  • 段階あり(ステップ):しきい値で管理したいとき。“危険/注意/安全”のように離散化して誤読を防ぐ。

    • 凡例のメニュー → 色の編集 → ステップにチェック → 段階数を設定。

  • 発散色(Diverging)基準(0や前年)からのプラス/マイナスを強調したいときに最適。中心点(走査中心)を0前年値に合わせて設定。


5. 実務でよく使う“色分け × 条件式”10パターン

  1. 売上 vs 目標:達成=青/未達=赤

  2. 在庫 vs 安全在庫:下回る=赤/OK=グレー

  3. 粗利率の水準:<0%=赤、0–10%=橙、10–30%=黄、30%+=緑

  4. クレーム件数の推移:前月比増=赤/減=青

  5. SLA(応答時間):>規定=赤、<=規定=緑

  6. 達成度ランク(五段階):最小値〜最大値を5ステップに分割

  7. パーセンタイル:上位20%=濃色、下位20%=淡色

    IF RANK_PERCENTILE(SUM([Sales])) >= 0.8 THEN "上位20%"
    ELSEIF RANK_PERCENTILE(SUM([Sales])) <= 0.2 THEN "下位20%"
    ELSE "中位"
    END
  8. YoY(前年同月比):0%以上=緑/未満=赤

  9. 滞留日数:>30日=赤、8–30日=黄、<=7日=緑

  10. 異常値フラグ:平均±3σを超過=赤(テーブル計算で平均と標準偏差を算出)


6. 地図やヒートマップでの条件式のコツ

6-1. 地図(都道府県・県別)

  • 色は連続色が直感的。ただし極端値があると他が潰れるので、分位ステップで調整。

  • **二変量(売上×粗利)**を同時に伝えたいときは、カテゴリを合成して色分け:

[売上カテゴリ] := CASE TRUE()
WHEN RANK_PERCENTILE(SUM([Sales])) >= 0.67 THEN "高"
WHEN RANK_PERCENTILE(SUM([Sales])) <= 0.33 THEN "低"
ELSE "中"
END

[粗利カテゴリ] := CASE TRUE()
WHEN RANK_PERCENTILE(SUM([Profit])) >= 0.67 THEN "高"
WHEN RANK_PERCENTILE(SUM([Profit])) <= 0.33 THEN "低"
ELSE "中"
END

[二変量カテゴリ] := [売上カテゴリ] + "-" + [粗利カテゴリ]
  • Color[二変量カテゴリ]を置いて9セルの配色表を作ると、意思決定が速くなります。

6-2. ヒートマップ(行×列の交点で色付け)

  • **マークタイプを「スクエア」**にして、Sizeを広げると“格子状”で見やすい。

  • 連続色を使う場合でも、ステップを有効にして3〜7段階にすると解釈が安定。


7. LOD表現で“集計レベルのズレ”を制御する

「集計レベルの違い」は色分けの落とし穴。例:各製品の売上をカテゴリ内比率で色分けしたいなら、カテゴリ合計をLODで固定。

// カテゴリ合計(ビューの粒度に依らず一定)
{ FIXED [カテゴリ] : SUM([Sales]) }

// 各製品のカテゴリ内比率
SUM([Sales]) / { FIXED [カテゴリ] : SUM([Sales]) }

この比率に基づき以下のように段階化:

IF SUM([Sales]) / { FIXED [カテゴリ] : SUM([Sales]) } >= 0.2 THEN "上位貢献"
ELSEIF ... THEN "中位"
ELSE "下位貢献"
END

LODで**“どの合計と比較しているのか”**を明確化すると、色分けがブレません。


8. 集計の整合:よくあるエラーと対処

  • 集計済みと非集計の混在

    • IF SUM([Sales]) > [Target] THEN ... はNG(左が集計、右が非集計)。

    • 対策SUM([Target])にするか、ATTR([Target])/MIN([Target])で粒度を合わせる。

  • テーブル計算 × 行列の方向が合わない

    • LOOKUPRANKを使った式は、表計算の編集でアドレッシング/パーティションを正しく設定。

  • NULLで判定が落ちる

    • ZN()IFNULL()でガード。

  • True/Falseの配色が逆転

    • 凡例の並び順色の割当を確認。


9. 色設計のベストプラクティス(“伝わる”が最優先)

  1. 意味の一貫性:赤=警告、緑=OK、青=中立など、全ダッシュボードで共通に。

  2. 色だけに頼らない:形(Shape)、ラベル、凡例の説明も併用。

  3. 色数は3〜7以内:人が識別できる色の限界を意識。5段階程度が現実的。

  4. 色弱フレンドリー赤/緑の組合せは避けるか、明度差を大きく。青/橙なども有効。

  5. 背景/文字のコントラスト:可読性を最優先(暗背景×淡文字、明背景×濃文字)。

  6. 既定のプロパティ → 色フィールドのデフォルト配色を設定し、全ワークシートで統一


10. “段階設計”の考え方(ビジネスロジックを色に落とす)

  • 静的なしきい値:SLA、法令・契約で決まっている基準値。

  • 動的なしきい値:直近3か月平均や前期比など、相対評価で変動。

  • ベンチマーク比較:市場平均、カテゴリ平均、上位四分位との比較。

  • 分布ベース:パーセンタイルやクラスターで自然な区切りを作る。

上記のどれを採用するかは、意思決定の文脈説明責任で決めます。現場合意を取り、凡例に定義文を明記しましょう。


11. ダッシュボード連携:色→行動を生む仕掛け

  • ハイライトアクション:色で目立たせた項目をクリック → 明細表や地図が連動。

  • パラメータアクション:カードを操作して閾値や期間を動的変更。

  • 凡例のフィルター:凡例で“未達だけ表示”のチェックボックス運用。

  • 説明カード:色の意味・しきい値の定義を固定で表示し、誤読を防止。


12. パフォーマンス配慮(速く、安定して動かす)

  • 計算はシンプルに:ネストが深いIFをCASE TRUE()に置き換える。

  • 重いテーブル計算を乱用しない:前処理や抽出、LODの活用も検討。

  • フィルターの順序コンテキストフィルターでデータ量を先に絞る。

  • 公開前のレビュー:サーバ/クラウドで応答時間を実測し、閾値ステップ数や明細数を調整。


13. よくあるUI操作(手順メモ)

  • 色の編集:凡例右クリック → 色の編集

  • 色のステップ色の編集ダイアログ → ステップにチェック。

  • 配色の反転:同ダイアログの反転

  • フィールド既定の色:データペインで該当フィールド右クリック → 既定のプロパティ

  • 凡例の表示/非表示:ワークシートメニュー → 凡例


14. ミニ・チートシート(貼って使える)

2値(達成/未達)

IIF(ZN(SUM([Sales])) >= ZN(SUM([Target])), "達成", "未達")

3段階(危険/注意/安全)

IF SUM([Value]) < [Danger Threshold] THEN "危険"
ELSEIF SUM([Value]) < [Caution Threshold] THEN "注意"
ELSE "安全"
END

前月比(増/減)

IF SUM([Sales]) - LOOKUP(SUM([Sales]), -1) >= 0 THEN "増" ELSE "減" END

分位(上位/中位/下位)

IF RANK_PERCENTILE(SUM([Score])) >= 0.8 THEN "上位"
ELSEIF RANK_PERCENTILE(SUM([Score])) <= 0.2 THEN "下位"
ELSE "中位"
END

カテゴリ内比率(LOD)

SUM([Sales]) / { FIXED [Category] : SUM([Sales]) }

15. 事例別の見本(短時間でマネできる)

15-1. 営業KPIダッシュボード

  • リードの温度感
    IF [Lead Status] IN ("MQL","SQL") THEN "重視" ELSE "通常" END

  • 案件確度(%)で段階色:
    IF AVG([Prob]) >= 0.8 THEN "高" ELSEIF AVG([Prob]) >= 0.5 THEN "中" ELSE "低" END

15-2. 在庫/物流

  • 滞留日数
    IF AVG([Days in Stock]) > 30 THEN "長期滞留" ELSEIF ... THEN "注意" ELSE "良好" END

  • 欠品リスク
    IIF(SUM([On Hand]) < SUM([Forecast]), "リスク高", "許容")

15-3. CS/コールセンター

  • 応答SLA
    IIF(AVG([Response Sec]) <= [SLA Sec], "遵守", "違反")

  • NPS分布
    IF AVG([NPS]) >= 9 THEN "推奨者" ELSEIF AVG([NPS]) >= 7 THEN "中立" ELSE "批判者" END


16. 品質を上げる“最後のひと手間”

  • ラベルに条件の理由を出す(例:「未達(売上950万/目標1000万)」)

  • 凡例の順序を論理順(危険→注意→安全)に整える。

  • 色の意味を固定文で明示(ダッシュボード上に「色の定義」テキストを置く)。

  • 色弱チェック(赤/緑は避けるか明度差を確保)。

  • データ更新頻度閾値の棚卸し(四半期ごとに妥当性を見直す)。


17. まとめ:条件式で「意思決定のための色」をつくる

  • Tableauの色分けは条件式で“状態”を作るのが基本。

  • IF/CASE/IIF/LOD/表計算/パラメータを使い分ければ、ほぼすべての実務要件をカバー可能。

  • **配色設計(意味の一貫性・色数・コントラスト・色弱配慮)**まで含めて、初めて“伝わるダッシュボード”になります。


付録:トラブル早見表

症状 よくある原因 対処
集計/非集計混在のエラー SUM()と生値の混在 粒度を合わせる(SUM() or ATTR()
前月比が正しくでない 表計算の方向不一致 表計算の編集で“月”方向に設定
すべて同じ色になる 条件の結果が単一 しきい値・フィルター・粒度を見直し
NULLで色がつかない 判定前に落ちる ZN()/IFNULL()で防御
色が逆転して見える 凡例の順と割当 凡例の色編集で入れ替え

おわりに

本記事では、Tableauの色分けを条件式で自在に操るための考え方とレシピを、実務の視点で整理しました。ここまでの式や手順をベースに、まずは既存ダッシュボードの1枚で**「色=意思決定」**に直結する改善を試してみてください。きっと効果を実感できるはずです。


📩 専門コンサルタントに相談してみませんか?

Tableauのライセンス選定や運用設計に少しでも不安がある方は、一度プロに相談してみるのがおすすめです。

「どのライセンスを選べばいいか分からない」
「導入したものの活用しきれていない」
「Power BIとの違いを整理したい」

こうしたお悩みに対し、当社ではTableau導入から定着・活用までを一気通貫で支援しています。業種や業務フローに応じた最適なライセンス構成と活用方法をご提案可能です。

▶ 詳細なサービス内容やご相談希望の方は、
こちらの専用ページをご覧ください。

相談は無料です。お気軽にご連絡ください

関連記事

この記事へのコメントはありません。

カテゴリー

アーカイブ