
Lookerで作成したグラフ上でドリルダウンできるようにする
この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。
大阪オフィスの玉井です。
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を使いこなして、じゃんじゃん掘り進んでいきましょう。










