【グラフのX軸が思うように並んでくれない、そんな悩みは今回の記事で解決できます】
Power BIのグラフの並び変更は、通常だとグラフの右上の三点リーダーをクリックした後に下記の画像の箇所で変更します
![](https://analytic-vba.com/wp/wp-content/uploads/2023/04/image-25.png)
今回は上の並べ方では解決できない場合の対処方法を3つ紹介します
いずれの方法もデータビュー画面・列ツールにて「列で並べ替え」機能を使用します
![](https://analytic-vba.com/wp/wp-content/uploads/2023/04/image-27.png)
まずは「1.並び変えたい列を選択」した後「列ツール」の「列で並べ替え」にて、「2.順位を記述した列」を指定します
読者の方の中には「その方法は知っている、だけどDAXを書くとエラーになった」という方もいらっしゃると思います
今回の記事ではエラーを回避する方法も解説しています
やりたい事
今回使用するデータは次の画像のデータです
![](https://analytic-vba.com/wp/wp-content/uploads/2023/04/image-26.png)
こちらの商品の並びを次のようにします
A⇒B⇒C⇒D⇒E ➡ C⇒D⇒E⇒A⇒B
DAX1
一つ目の並べ替え方法はDAXのSwitch関数で変える方法です
下は別データで並び変えた事例です
*過去記事⇒こちら
![](https://analytic-vba.com/wp/wp-content/uploads/2023/04/image-28-644x197.png)
上の画像ではMONTHの並び順を1月ではなく、4月からはじまるように変えています
では、今回の場合はどうかというと、次のようなSwitch関数の式を書きます
![](https://analytic-vba.com/wp/wp-content/uploads/2023/04/image-29.png)
ところが、今回の場合は実際に並び替えるとエラーが発生します
![](https://analytic-vba.com/wp/wp-content/uploads/2023/04/333f4539b4d855cc6bfab3c60b5fb4f2.gif)
前述の月の並び替えの場合は、並び替え対象が「MONTH列」で順位列の式が「順位 = Switch(MONTH([Date]),1,10,・・・」となっています
つまり、Switch関数の中身が「並び替え対象」ではなく「Date列」となっています
今回の場合は、Switch関数の中身に「並び替え対象」が入っています
順位_DAX = SWITCH(‘Data'[商品],・・・
ですので、次のようなエラーがでます
![](https://analytic-vba.com/wp/wp-content/uploads/2023/04/image-30.png)
これはSUM関数をSUM関数の対象範囲に含めるような形になります
![](https://analytic-vba.com/wp/wp-content/uploads/2023/04/image-31.png)
ですので、今回は別な方法も紹介します
条件列
Power Queryエディタ画面で条件列を作成する方法も使えます
![](https://analytic-vba.com/wp/wp-content/uploads/2023/04/image-32-644x203.png)
この条件列にて順位を指定すると次のようなグラフになります
![](https://analytic-vba.com/wp/wp-content/uploads/2023/04/image-33.png)
別テーブルを手動で作成(DAX2)
最後に紹介する方法はこちらの画面:データの入力でテーブルを作成します
![](https://analytic-vba.com/wp/wp-content/uploads/2023/04/image-34.png)
内容はこんな形で入力します
![](https://analytic-vba.com/wp/wp-content/uploads/2023/04/image-35.png)
こちらで作成したテーブルはリレーションも組んでおきます
![](https://analytic-vba.com/wp/wp-content/uploads/2023/04/image-36-644x257.png)
次にデータビュー画面でDAX(RELATED関数)を作成し、順位列を作成します
![](https://analytic-vba.com/wp/wp-content/uploads/2023/04/image-37-644x234.png)
この順位列であれば循環の問題は発生しません
<まとめ>
今回は、グラフの並び順を変える方法を3つ紹介しました
DAXで順位列を作成する場合には「循環参照」の問題は常に意識しておきましょう
個人的にはPower Queryエディで条件列を作成するより、DAXで作成した方が手軽だと感じています