【グラフのX軸が思うように並んでくれない、そんな悩みは今回の記事で解決できます】
Power BIのグラフの並び変更は、通常だとグラフの右上の三点リーダーをクリックした後に下記の画像の箇所で変更します

今回は上の並べ方では解決できない場合の対処方法を3つ紹介します
いずれの方法もデータビュー画面・列ツールにて「列で並べ替え」機能を使用します

まずは「1.並び変えたい列を選択」した後「列ツール」の「列で並べ替え」にて、「2.順位を記述した列」を指定します
読者の方の中には「その方法は知っている、だけどDAXを書くとエラーになった」という方もいらっしゃると思います
今回の記事ではエラーを回避する方法も解説しています
目次
やりたい事
今回使用するデータは次の画像のデータです

こちらの商品の並びを次のようにします
A⇒B⇒C⇒D⇒E ➡ C⇒D⇒E⇒A⇒B
DAX1
一つ目の並べ替え方法はDAXのSwitch関数で変える方法です
下は別データで並び変えた事例です
*過去記事⇒こちら

上の画像ではMONTHの並び順を1月ではなく、4月からはじまるように変えています
では、今回の場合はどうかというと、次のようなSwitch関数の式を書きます

ところが、今回の場合は実際に並び替えるとエラーが発生します

前述の月の並び替えの場合は、並び替え対象が「MONTH列」で順位列の式が「順位 = Switch(MONTH([Date]),1,10,・・・」となっています
つまり、Switch関数の中身が「並び替え対象」ではなく「Date列」となっています
今回の場合は、Switch関数の中身に「並び替え対象」が入っています
順位_DAX = SWITCH(‘Data'[商品],・・・
ですので、次のようなエラーがでます

これはSUM関数をSUM関数の対象範囲に含めるような形になります

ですので、今回は別な方法も紹介します
条件列
Power Queryエディタ画面で条件列を作成する方法も使えます

この条件列にて順位を指定すると次のようなグラフになります

別テーブルを手動で作成(DAX2)
最後に紹介する方法はこちらの画面:データの入力でテーブルを作成します

内容はこんな形で入力します

こちらで作成したテーブルはリレーションも組んでおきます

次にデータビュー画面でDAX(RELATED関数)を作成し、順位列を作成します

この順位列であれば循環の問題は発生しません
<まとめ>
今回は、グラフの並び順を変える方法を3つ紹介しました
DAXで順位列を作成する場合には「循環参照」の問題は常に意識しておきましょう
個人的にはPower Queryエディで条件列を作成するより、DAXで作成した方が手軽だと感じています
コメントを残す