はじめに
Power BIでグラフやチャートを作成するときに、凡例(Legend)の並び順が思った通りにならないことはありませんか? デフォルトでは、Power BIはデータの項目を自動的に昇順または降順、もしくはアルファベット順で並べる場合が多いです。しかし、ビジネスの要件や社内の慣習によっては、任意の順番で凡例を並べたいケースがあります。
たとえば、
-
「売上ステータスを“新規→継続→休止”の順番で並べたい」
-
「製品カテゴリを“主要製品→サブ製品→オプション製品”の順番で表示したい」
など。こういった場合は、“項目名”そのもののソート順をカスタマイズする必要があります。本記事では、Power BIで凡例の並び替えを行う方法を複数のステップに分けて詳説するとともに、トラブルシューティングや応用的なテクニックも併せて紹介します。
1. 凡例の並び替えがうまくいかない原因とは?
Power BIでは、グラフやビジュアルの「凡例」フィールドにカテゴリ列を置いた場合、そのカテゴリの並び順はデフォルトで以下のように決まることがあります。
-
アルファベット順(A→Z)
-
数値順(数値が小さい→大きい)
-
データの昇順・降順(ビジュアル上の値に応じた並び替え)
ユーザーが直接、凡例のラベルをドラッグ&ドロップで好きな順序に変更することはできません。そのため、“元のデータ”をソートするロジックをPower BIに教えてあげる必要があるわけです。
2. 凡例を並び替えるための基本手順
Step 1. 「並び替えに使いたい列」を準備する
凡例を自由な順序で並べたいときは、以下のような補助列(ソートキー列)を用意します。
項目コード | 項目名 | ソート順 |
---|---|---|
1 | 新規 | 1 |
2 | 継続 | 2 |
3 | 休止 | 3 |
たとえば上記のように、「ソート順」を表す数値列を作り、1,2,3,...
といった形で並び順を指定します。この列を**「Sort By Column(列による並び替え)」機能**で利用します。
ポイント
項目名は「新規」「継続」「休止」のように文字列で、実際の可視化に表示したいラベル。
ソート順は数値列。1,2,3,…のように昇順で並べたい順番を付与します。
データの作成方法
-
Excelなどのソースデータにあらかじめ「ソート順」列を加えておく
-
Power Queryで条件分岐を行い、「ソート順」列を追加する
-
DAXで新しいカラムを作る(IF文などを利用)
上記はいずれも手段です。いちばん簡単なのは、もともとのデータソースにソートキー列を用意しておく方法でしょう。
Step 2. 「項目名」を「ソートキー列」で並び替える設定をする
Power BI Desktopの「データ」ビューまたは「モデル」ビューで、並び替えたい列(ここでは「項目名」)を選択し、[列による並び替え] → [ソート順] を指定します。
-
フィールドリストから「項目名」列をクリック
-
リボンから [列ツール] → [並び替えの設定] → [列による並び替え] を選択
-
「ソート順」として「ソート順」列を設定
これで「項目名」は、「ソート順」列で定義した値に従って並ぶようになります。あとは、レポートに戻ってグラフを確認すると、凡例が指定の並び順に並んでいるはずです。
Step 3. ビジュアルの「凡例」フィールドに「項目名」を設定
グラフ(例:棒グラフや折れ線グラフ)を作成し、凡例のフィールドに「項目名」をドラッグ&ドロップします。すると、先ほど「ソート順」で指定した通りの順序でラベルが並んで表示されます。
3. トラブルシューティング:よくある問題と解決策
● 数値列を使わずに文字列だけで並び替えたい
文字列列のみだと、「A→Z」や「Z→A」のアルファベット順に制限されることが多いです。カスタム順序を実現したい場合は、やはりソート用の数値列を準備する方法が一番簡単で確実です。
● ソート用の列が見つからないエラー
「この列は別のテーブルに属していて、ソートに使用できません」といったエラーが出ることがあります。これは、異なるテーブルにある列をソートキーとして指定しようとした場合などに起こります。解決策としては、以下のような方法があります。
-
データモデリングの段階で両テーブルを結合(Merge)して、同じテーブルにソート用列を持ってくる
-
DAXで同じテーブルにCalculated Columnとしてソートキー列を生成
● 既に別の「列による並び替え」が設定されている
Power BIでは、ひとつの列に対して同時に複数の「並び替え列」を指定することはできません。もし既に他の列でソート設定がある場合、いったんクリアしてから新しいソート設定を適用する必要があります。
4. 凡例並び替えの応用:階層やグループを扱う場合
複数のカテゴリを階層構造(例:メインカテゴリ → サブカテゴリ)で持っている場合、それぞれについてソート順を設定し、階層ごとに「Sort By Column」を使うのも有効です。また、Power BIの機能を使ってカスタムグループを作成した場合も、グループのラベルに対してソート列を定義することで、希望の並び順を実現できます。
5. その他の方法:DAXでソート順を条件分岐させる
状況によっては、DAXのCalculated Columnでソートキーを動的に作成することもあります。例えば、
このような列を作り、[項目名] をソートキー列として指定すれば、簡易的な並び替えロジックを保つことができます。
ただし、大量の項目があるときはすべてSWITCH文に書くのは大変なので、Excelやデータソースのマスターテーブルで管理した方がミスが少なく済むことが多いです。
6. Power BI活用でつまずいたら?無料相談・コンサルサービスのご案内
Power BIで凡例を並び替えるには、ちょっとしたコツが必要です。さらに、DAXによる高度な分析や自動化を進めると、思わぬところで詰まるケースもあります。以下のようなお悩みはありませんか?
-
「Power Automate のフロー設計が複雑でわからない」
-
「有料プランに移行すべきか判断が難しい」
-
「会社全体で短期間にスキルを高めたい」
-
「複雑なチャートで並び順をどう制御するか悩んでいる」
📞 もし困り事があるなら、まずは無料相談を
弊社では、Power BIやPower AutomateなどのMicrosoft製品の導入・運用、さらには社内教育のトレーニング支援まで包括的なコンサルティングサービスを行っています。個別に最適なアドバイスを提供し、問題解決をスピーディーにサポートいたします。
7. Power BIハンズオンセミナーでDAXや可視化のスキルを強化
🔰 Power BIハンズオンセミナー初級編
-
短時間で基本的なデータモデリングをマスター
-
実務で使えるレポート作成を実践形式で体験
-
少人数制のため質問しやすく、疑問点をすぐ解決
🚀 Power BIハンズオンセミナー中級編
-
DAX関数 × データモデル設計による高度な分析を学習
-
レポートの自動化や視覚化テクニックも実践形式で習得
-
社内でのデータ分析スキルをアピールし、キャリアアップにつなげよう
👉 詳細はこちら
「凡例並び替え」も含め、Power BIのレポートやダッシュボード作成を極めると、業務の効率化だけでなく、経営層やチームメンバーへの情報共有が格段にスムーズになります。DAXを使いこなし、さまざまな可視化を巧みに操ることで、組織のデータドリブン化を先導できる力が身につきます。
まとめ
Power BIで凡例の並び替えをコントロールするキーポイントは、「Sort By Column(列による並び替え)」機能を正しく使うことです。具体的には以下のステップを押さえましょう。
-
並び替えたいカテゴリに対して、数値列(ソートキー)を用意する
-
「[列による並び替え]」を使い、カテゴリ列に「ソートキー」列を指定
-
ビジュアルの凡例にそのカテゴリ列を配置し、並び順を確認
この基本を押さえておけば、多くのケースで自分が望む順番に凡例を並べられます。さらに、複数の年度・複数のカテゴリ階層や条件分岐が絡む場合も、同様に工夫すれば対応可能です。
もしPower BIを使いこなす中で「DAXが難しい」「フロー設計がわからない」「部署全体でスキルを底上げしたい」など、何か困り事やご要望がありましたら、お気軽に無料相談をご利用ください。セミナーやコンサルティングを通して、レポートの質と業務の効率を同時に向上するお手伝いをいたします。
コメント