💡

Power BI でマトリックスを使わないでマトリックスを頑張ってみる

に公開

はじめに

Power BI を使って列が正しく表示されるマトリックスを実現する方法を解説します。

問題点

例として東京の平均気温をマトリックスで表示します。行に年月、列に平均気温を 5 ℃刻みで指定します。

このように表示できますが、問題があります。5 ℃未満 の列が左端に表示されてほしいところですが、右端に表示されてしまいます。Power BI のマトリックスでは列の順序を昇順または降順でしか並べ替えできないため、辞書順で並べ替えた結果、このような順序になります。

次に特定の年月でフィルターを適用します。

この場合、5 ℃未満 の列が表示されません。データのない列は表示されませんが、列ヘッダーは固定で表示したい場合もあるでしょう。

解決方法

Power Query を使用して対応します。

クエリの参照を作成し、行列 (年月、分類) でグループ化します。列ヘッダーの内容に合わせてフィルターを適用します。これを列の数だけ作成します。

さらにクエリの参照を作成します。行 (年月) でグループ化し、先ほど作成した列のクエリを順にマージします。列の順番も任意に並べ替えできます。

マトリックスではなくテーブルでデータを表示します。5 ℃未満 の列が左端に表示されます。

フィルターを適用しても正しく表示されます。

おわりに

この方法は、工夫すれば実現できるという一例です。Excel のピボット テーブルを利用したほうが簡単な場合もあります。

Discussion