各カテゴリ同様の減少傾向に使う
「PowerBI Desktop」のスモールマルチプル機能は、カテゴリごとに(小さい)グラフを並べる機能です。
各グラフの軸の大きさが同一ということもあり、各カテゴリとも同程度の大きさを持つ数字群のグラフ向きです。
このためあまり使ってなかったのですが、「最大値でなく同様の増減率推移を比較できる」だろうと思い、「最近の新型コロナの陽性者数の世界的減少傾向」を見るのに使えると考えました。
使ったデータはWHO(世界保健機関:World Health Organization)の「COVID-19 Dashboard」。PowerBI Desktopにインポートしました。
準備として、WHOがが使用しているエリアの略称
「AFRO」「AMRO」「SEARO」「EURO」「EMRO」「WPRO」
を正式名称に戻しました。
カスタム列を追加し、以下の式を設定しました。
「CONTAINSSTRING」はDAX関数で、検索した文字列が含まれればTRUEを返します。
REN_WHO_region = IF(
CONTAINSSTRING([WHO_region],"AFRO"),"African Region",
IF(
CONTAINSSTRING([WHO_region],"AMRO"),"Region of the Americas",
IF(
CONTAINSSTRING([WHO_region],"SEARO"),"South-East Asia Region",
IF(
CONTAINSSTRING([WHO_region],"EURO"),"European Region",
IF(
CONTAINSSTRING([WHO_region],"EMRO"),"Eastern Mediterranean Region",
IF(
CONTAINSSTRING([WHO_region],"WPRO"),"Western Pacific Region",
"Others"
))))))
実数のスモールマルチプル
まず、増減率でなくインポートした数値をそのまま使ってみます。
スモールマルチプル用のカテゴリに、このカスタム列「REN_WHO_region」を使います。
横2×縦3のレイアウトにします。
フィルターで「2022年」、(x軸の)階層の指定で「月ごとの集計」としました。
エリアごとの集計地に差があるので、最大値が小さい区域のグラフは変化がわかりません。
※この時点の表示対象は1月~5月。
増減率のスモールマルチプル1
「クイックメジャー」(フィールド付近を左クリックして選択)を利用し、「月ごとの変化」の計算式を指定しました。
生成された計算式は、「DATEADD」関数で前月の数値を呼び出し、当月の増加率を出す、というものです。
New_cases MoM% =
IF(
ISFILTERED('calender'[Date]),
ERROR("タイム インテリジェンスのクイック メジャーは、Power BI が指定する日付階層またはプライマリの日付列でのみグループ化またはフィルターできます。"),
VAR __PREV_MONTH =
CALCULATE(
SUM('WHO-COVID-19-global-data'[New_cases]),
DATEADD('calender'[Date].[Date], -1, MONTH)
)
RETURN
DIVIDE(
SUM('WHO-COVID-19-global-data'[New_cases]) - __PREV_MONTH,
__PREV_MONTH
)
)
その計算式列をY軸値として設定し、スモールマルチプルを使います。
前年12月から翌年1月では、大きく増加しているエリアがあることがわかります。
最近の減少傾向、およびその傾向にエリアで変化があるかを確認する、という前提に切り替え、1月の表示を外すことにしました。
増減率のスモールマルチプル2
エリアごとの比較をしやすくなります。
5月を比べると、「Affrica Region」と「Region of the Americas」が前月より増加しています。
処理の仕方が間違ってないかを確認するために、実数の期間を長くとり、棒グラフで推移をチェックしました。
「Affrica Region」と「Region of the Americas」ともに5月は前月より増加しています。
ついでにドリルスルー
スモールマルチプルの使用はここで区切りがついたのですが、棒グラフへもう少しスムーズに移るために「ドリルスルー」を使ってみました。
ついでにそのメモを残しておきます。
まず、エリアごとの棒グラフ(ひと月の区間にエリア分のグラフが並んでいます)の右下の「ドリルスルー」にエリア列を示す「REN_WHO_region」を配置します。
このグラフのタブ名称を「地域別(陽性者数)の複製」としました。
スモールマルチプルのグラフ上に同期間のテーブル(表)を参照用として用意しました。
スモールマルチプルで気になったエリアをテーブル上で右クリックし、「ドリスルー」→「地域別(陽性者数)の複製」と選ぶと、エリアごとの棒グラフに切り替わります。
ちなみに、ドリルスルーの遷移先のグラフが引き継いだ表示条件は、ドリルスルーの設定部分で確認できます。
了