【Power BI】凡例を任意の順に並び替える方法

凡例の並び替えは昇順・降順しかできないのか?

以下のような積み上げ縦棒グラフを作るシーンがあると思いますが、色分けした凡例の積み上げ順を変えたいと感じる場面はないでしょうか?

例えば以下の例では、下からカナダ→フランス→ドイツ→メキシコ→アメリカの順番で棒グラフが積み上げられていますが、市場が大きなアメリカ→ドイツ→フランス→カナダ→メキシコの順番で下から積み上げる場合どのようにすればよいでしょうか?

昇順・降順でしたら以下のように、グラフの右上にカーソルを合わせて表示される「その他のオプション」から並び替えることができます。

「凡例の並び替え」から降順または昇順で並び替えを選択します。

今回は降順で並び替えを選択しました。

結果、棒グラフの積み上がる順番を下からアメリカ→メキシコ→ドイツ→フランス→カナダに変更することができました。

昇順・降順に凡例を並び替えることは簡単にできますが、市場が大きなアメリカ→ドイツ→フランス→カナダ→メキシコというように、凡例の並び替えを任意にカスタマイズする方法はまた別のやり方になります。

同じBIツールのTableauは凡例をドラッグ&ドロップすると簡単に任意の順番で並べ替えることができます。

それに比べるとPower BIはひと手間かかります。

この記事ではPower BIで凡例を任意の順番で並べ替える方法を知ることができます。

任意の順に並び替える手順

①積み上げ縦棒グラフ作成(知っている方はスキップしてください)

まずは簡単に積み上げ縦棒グラフの作り方を解説します。

今回は以下のサンプルデータセットを使用します。

サンプルデータセットを読み込んだ後、まずは視覚化ウィンドウから「積み上げ縦棒グラフ」を選択します。

X軸にDate、Y軸にSales、凡例にCountryをドラッグ&ドロップすると、下のような国で色分けされた積み上げ縦棒グラフができあがります。

②並び替えマスターを作成

ここでPower BIの手間がかかるのが、以下のようにExcelで並び替えマスターを作成し、Power BIに取り込ませ、リレーションシップを行わなければならない点です。

Excelの重複の削除(知っている方はスキップしてください)を利用してリストを作成

ここからは、あくまでも一つの方法に過ぎませんが、データセットの国名の系列から国名のリストを作成する方法を紹介します。

グラフが表示されているキャンパスの左上に表示されている、データビューを選択します。

すると、以下のようなデータテーブルが表示されるので国(Country)の列を選択します。

Countryのタイトル行をクリックすれば、列のデータ全てを選択することができます。

右クリックからコピーを選択します。

Excelを立ち上げて、貼り付けをします。

するとデータテーブルの国(Country)の列の情報が全て貼り付けられます。

国名のリストを作成するには国名の重複を削除する必要があります。

Excelの重複の削除は以下でも詳細に解説しています。

【Excel】表の重複行を削除する方法

国名が入力された範囲を全て選択の上、「データ」→「データツール」→「重複の削除」を選択します。

「重複の削除」というダイアログボックスが表示されます。

ここまで新規でExcelを立ち上げてA列しかデータを入力していませんので、列Aにチェックが入っていることを確認の上、「OK」を押します。

重複が削除され、ダブりがない形で国名のリストを作成することができました。

後は、B列に凡例の並び替え順となる数値を入力します。

今回タイトル行には国別市場規模という名前をつけました。

上の並び替えマスターは降順でも昇順でもない、任意のアメリカ→ドイツ→フランス→カナダ→メキシコの並び替え順で番号を振っています。

上のExcelファイルに「並び替えマスター」とファイル名をつけて保存しました。

③並び替えマスターの取り込み

Power BIのデータビューに戻りまして、保存した「並び替えマスター」を取り込みます。

「ホーム」の「データを取得」の「Excelブック」から保存した「並び替えマスター」のExcelファイルを取り込みます。

「ナビゲーター」が表示されますので、取り込みたいシート名をチェックの上、「読み込み」を選択します。

するとデータウィンドウに先程チェックを入れたシート名が表示され、シート名を展開すると国名(Country)と並び替え順を記載した国別市場規模の系列名が表示されます。

④リレーションシップの確認

ここで次は「モデルビュー」に移ります。

ここでは国(Country)の情報を介して、サンプルデータセットのシート名「financials」のデータと新たに取り込んだ並び替えマスターのシート名「Sheet1」のデータが紐付けられていることが確認できます。

このリレーションシップはプロパティウィンドウからも確認することができ、リレーションシップがうまくいっていない場合はここから手動で設定することになります。

リレーションシップがうまくいかない原因

先程、並び替えマスターをExcelで作成する際に、データビューから国(Country)の列をコピー&ペーストして、Excelの重複の削除を用いて国(Country)のリストを作成した理由を解説します。

これは、サンプルデータセットと並び替えマスターの紐づけ系列である国(Country)の記載の揺れを防ぐためです。

記載の揺れがあると、紐づけデータとして認識されず、リレーションシップがうまくいかない可能性があります。

タイトル行も含め、国名がサンプルデータセットと並び替えマスターで同じ選択肢となるように今回のような方法で対応しました。

⑤凡例を並び替えマスターで設定した系列に入れ替え

レポートビューに戻ります。

グラフエリアを選択して、凡例を新たに取り込んだ「並び替えマスター」の国(Country)に入れ替えます。

以下のようなグラフになります。

⑥データビューから並べ替え

データビューに戻ります。

今度は画面右側のデータウィンドウからPower BIに取り込んだ「並び替えマスター」のシート名を選択します。

するとデータビューにはPower BIに取り込んだ「並び替えマスター」の表が表示されます。

サンプルデータセットと並び替えマスターの共通データとなっている国(Country)の列を選択します。

次に「列ツール」の「列で並べ替え」から「国別市場規模」を選択します。

すると以下のうようなグラフになり、並び替えマスターで設定した国別市場規模の番号順に棒グラフを積み上げることができました。

並び替えの注意点

サンプルデータセットと並び替えマスターの共通データとなっている国(Country)の列を選択した上で、「列ツール」の「列で並べ替え」から「国別市場規模」で並び替えるようにしてください。

「国別市場規模」の列を選択して「列で並べ替え」から「国別市場規模」や「Country」で並び替えをしても、グラフは国別市場規模で設定した番号順に積み上げられません。

また、データビュー上で昇順・降順で並び替えても、データビューの表の並び順が変わるだけで、レポートビューのグラフの表示は変わりませんのでご注意ください。

今回の内容が参考になれば幸いです。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA