Power BI - ドリルダウンとドリルスルーの違いと、ドリルスルーの設定方法
Power BI に慣れてきたら、「ドリルスルーって何?」と思うことがしばしばあると思います。
ドリルダウン(アップ)という機能が名前的にちょっと似ているから?余計に「機能も似ているのか?」と理解を少し遅らせている気がします。
ドリルダウンについて
ドリルダウンは、階層化された列をグラフに設置すれば、自動的に(追加の作業不要で)実装される機能です。
例えば、日付情報が一番わかりやすいと思います。
日付テーブル内で、「Year>Month>Day」 を階層化しているとします。
この「Year階層」をグラフの横軸に設定すると、
次のように、最初は最上位階層である「Year」でグラフが作成されます。
このグラフにマウスオーバーさせると、
よく見ると、うっすらと何種類かの矢印マークがでています。
この下向きの矢印が「ドリルダウン」で、上向きの矢印が「ドリルアップ」を行うためのボタンです。
各ボタンのそれぞれの意味は、左から
(↓)ドリルダウンの「オン/オフ」切り替えボタン:
「オン」にした状態でグラフ上の特定のデータをクリックすると、予め階層化された軸(例では「Year階層」を使用)の1つ下の階層で、かつ、選択した範囲のグラフが再描画される。
(↓↓)(上位階層を無視して)1つ下の階層に軸を切り替えるボタン:
例では、「Year階層」を使用しており、この階層は Year>Month>Day の順にメッシュが細かくなっていく設定をしているため、1回クリックすると、「Month」階層でグラフが再描画されます。ただし、上位階層が無視されるため、例えば、2014年の1月のSalesも、2015年の1月のSalesも、「Month」階層で再描画されたグラフ上では、同じ1月に集計されてしまいます。
(フォークみたいな矢印)(上位階層を引き継ぎながら)1つ下の階層に軸を切り替えるボタン:
これが、一番よく使うボタンだと思います。例で使用している「Year階層」の場合、最初は、「2014、2015」のように「Year」単位でグラフが描画されていますが、1回クリックすると、次は、「2014年1月、2014年2月、・・・2015年12月」といった風に、上位階層を引き継ぎながら(「Year x Month」で)グラフが再描画されます。
ちなみに、上矢印(↑)は、上記のどのボタンでドリルダウンをした後でも、1回クリックするごとに1つ上の階層にグラフの描画を戻してくれる(ドリルアップ用の)ボタンです。
ドリルスルーとは
ドリルスルーとは、ドリルダウンとは全く違うもの、と考えておいた方が覚えやすいと思います。
MSの説明ページはこちらです。(「ドリルダウンと似ているもの」という先入観を持ってみてしまうとわかりづらい)
「ドリルスルー」はPower BIがローンチされた当時は無かった機能で、
2017年9月に新機能として搭載されています。
その時の説明動画(英語)はこちらです。
この動画でも説明されていますが、
ドリルスルーは、
予め(手作業で)詳細を説明するための別ページを作成しておき、グラフを右クリックした際に、その詳細ページに飛べるようにする機能
です。
従って、ドリルダウンのように、自動で設置され、サクサクとグラフのメッシュを細かくしていけるような、又は自動で作成された詳細版のかっこいいページが見れるようになる、といったものではありません(手作業で作成します!)。
ちなみに、「グラフを右クリックしてリンク先を表示させる」という点を除けば、ブックマーク機能を使っても同様のレポートが作成できます。
Power BI ではほかにも随所に見かけますが、手動で1から設定することもできるけど、特定の目的を達成するための一連の作業を1つにパッケージしてくれている機能が複数あります。例えば、What if分析をするときの「新しいパラメーター」ボタンも、無くてもWhat if分析をするためのレポートは作れます。つまり、”かゆいところ” に対応した機能だと思います。
ドリルスルーの設定方法
ドリルスルーは2 Stepで設定します。
Step 1. ページを2枚(Master Page と Target Page)作成します
Step 2. Target Pageで「ドリルスルー」に詳細化したいときに使用する軸となるテーブルの列を設定します
具体例を見ながらの方がわかりやすいと思うので、このサンプルデータで説明します。
ではまずStep1として、Master PageとTarget Pageを作成します。
Master Pageはレポート閲覧者に全体感を把握させるために作成するサマリーページです。
Target Pageは、レポート閲覧者が詳細を確認したくなった際に飛んでもらう先にあるページです。
Master Page
画面左半分の、「Year」(スライサー上段)、「Product」(スライサー下段)、「Country」(Map)で絞り込んでいくと、
画面右半分の横棒グラフにSales、COGs、Proiftが時系列で表示されるという構成としておきます。
Target Page
Master Pageを閲覧した人が、
特定の月(ex. 2014年4月)の売上高の詳細を知りたくなると想定して作成したページになります。
左端に4枚のカードを設置していますが、中身はSELECTEDVALUE()を用いたメジャーをそれぞれ作成・適用し、
選択中のYear、Month、Product、Countryが表示されるようにしています。
この段階では、Master PageとTarget pageの連携(ドリルスルーの設定)がなされていないので、カードの一部は(空白)と表示されたりしています。
(ALL ProductとAll Countryの表示は、選択されていない場合に、そのように表示されるよう、IFを使ったメジャーの中で指定した文言になります。例として、選択中のCountryをカードに表示するために作成したメジャーをサンプルとして記載しておきます。)
Measure_Country =
VAR selectedCountry = SELECTEDVALUE(financials[Country])
RETURN IF(ISBLANK(selectedCountry), "All Country", selectedCountry)
※VARとかRETURNとか何?という人はこちらの記事に書いていますので。
ドリルスルーの設定
2枚のページ(MasterとTarget)が作成できたので、
「Master Pageを閲覧中に、詳細を確認したくなったらTarget Pageに飛べる」ようにドリルスルーを設定していきます。
やり方はとっても簡単で、1ステップで設定が終わります。
「視覚化」の下にあるドリルスルーのフィールドの中に、「Sales」をドラッグアンドドロップで挿入するだけです。
(先ほど作成したTarget Pageには、Salesの詳細を確認するページとしての意味合いを持たせたいので、「Sales」を入れました)
この際、「すべてのフィルターを保持する」を必ず「オン」にしておきましょう。
なぜなら、Master PageからこのTarget Pageに飛んでくる人は、Master Pageの「特定の年月における売上高の詳細が見たい」と思っているはずなので、その「特定の年月」がいつなのかといった情報を引き継いでこないと、毎回改めてTarget Pageでフィルターをかけていかなければいけなくなるからです。
設定が完了すると、レポート左上に、自動で「戻るボタン」が配置されます。このボタンは、Master Pageから詳細を確認するためにTarget Pageに移動してきた人を、Target Pageで必要な情報の確認を終えたら、元のMaster Pageに戻してあげるためのボタンになります。
挙動の確認
設定が無事完了したか確認してみましょう。
Master Pageに移動して、
棒グラフの特定の売上を選択して(←必ずグラフ上でクリックして「選択」します)、
右クリックします。
「ドリルスルー」という項目がでてきて、選択すると先ほど作成した「Target Page」が出てきました!
これをクリックすると、
Master Pageで「詳細が見たいな」と思って選択していた項目の絞り込み条件をそのまま引き継いで、Target Pageが表示されています。
以上が、ドリルスルーになります。
ドリルスルーのページを作成するときのTipsとして、
今回は「Target Page」というページ名称にしましたが、
ここは、「売上の詳細」とか「Breakdown of Selected Sales」などのように、遷移先で見れる内容が直感的にわかりやすい名称にした方がよいです。
また時間があったら、Power BIの基本的な記事を書きたいと思います。