Lookerで作成したグラフ上でドリルダウンできるようにする
大阪オフィスの玉井です。
Lookerで下記のようなグラフを作成したとします。
地域別の注文件数を棒グラフにしたものです。こういうグラフを作った時、例えば「East地域の注文データの詳細がみたい」みたいなことって思ったりしませんか?Lookerの場合、LookMLでドリルダウンの記述を行えば、それが実現できます。
drill_fields
ドリルダウンの仕方を簡単に言うと、元となるdimensionやmeasureにdrill_fields
というパラメータを指定するだけです。
冒頭のグラフは注文件数を可視化しています。使用しているデータは1レコード=1注文件数なので、レコードをカウントしているmeasureにパラメータを記述します。
measure: count { type: count drill_fields: [order_id, product_name, customer_name] }
measure内にdrill_fields
というパラメータを記述し、括弧内にドリルダウン後に表示するフィールド名を書いていきます。
冒頭で紹介したグラフを今一度作成して、Eastの棒を選択すると…
drill_fields
で指定したフィールドがカラムとなったテーブル表が表示されます。右上のメニューからは、さらにこの表を元にExploreに遷移したり、ドリルダウンしたデータをダウンロードしたりすることもできます。
ドリルダウンしたい項目を使い回す時はset
上記のように、ドリルダウンしたいdimensionやmeasureにdrill_fields
を指定すれば、グラフでドリルダウンすることができます。
データ分析を進めていくと、色々なdimensionやmeasureに対してドリルダウンを指定する必要が出てくると思います。ただ、そのたびにいちいちdrill_fields
を書くのは少々面倒です。
もし、ドリルダウンするフィールドが共通しているのであれば、コピペを繰り返すのではなく、set
で一箇所に指定おきましょう。
set: count_drilldown { fields: [ order_id, product_name, customer_name ] }
上記のような形でドリルダウンした時のフィールド名を一箇所に定義しておくことができます。こうしておけば、drill_fields
に対する記述は、下記の通りで済みます。
measure: count { type: count drill_fields: [count_drilldown*] }
[<setの名前>*]
と記述することで、そのsetに定義しているフィールドをドリルダウン項目として使い回すことができます。こうやって、システム開発のコードのように、一度書いたことを繰り返さないようにしていくのがLookerの流儀ですね。
おわりに
drill_fields
とset
を使いこなして、じゃんじゃん掘り進んでいきましょう。