Technical Blog テクニカルブログ
  1. HOME
  2. テクニカルブログ
  3. Lookerでドリルダウンしたグラフのビジュアリゼーションをカスタマイズしてみた

Lookerでドリルダウンしたグラフのビジュアリゼーションをカスタマイズしてみた

投稿者:中島

Lookerでドリルダウンしたグラフのビジュアリゼーションをカスタマイズしてみた

こんにちは、日本情報通信の中島です。

今年度からBIツールを担当する部署へと異動になり、Lookerをメインに勉強を進めて半年が経ちました。


Lookerでは様々なビジュアリゼーションのタイプがありますが、ドリルダウンしたときのデータについてはデフォルトだと表形式のデータテーブルが表示されてしまいます。
そのため何を表しているのか一目見ただけでは分かりにくかったことがありました。

今回はドリルしたデータをユーザーの好みのグラフで参照できるように、ビジュアリゼーションをカスタマイズする方法をご紹介します。
(注意) この記事では、(半角)バックスラッシュをすべて¥と表記しております。

目次

  1. 設定
  2. ドリルダウンしたビジュアリゼーションをカスタマイズする
  3. その他のカスタマイズ
  4. まとめ

1.設定

Looker管理者は 管理>一般>ラボ からVisual Drilling 機能が有効になっているか確認してください。(この Labs 機能はデフォルトで有効になっています)

スクリーンショット 2022-10-07 103319.png

新しいダッシュボードエクスペリエンスを使っている場合は、こちらのON・OFF関係なく、linkパラメータで指定されているビジュアリゼーションを使用します。

レガシーダッシュボードを使っている場合は、OFFの状態でドリルしたときのグラフはビジュアリゼーションを変更しない限り、常にデータ表になります。

2.ドリルダウンしたビジュアリゼーションをカスタマイズする

ドリルのビジュアリゼーションをデフォルトのデータ表からカスタマイズするためには、linkパラメータにLiquid変数を使用することで可能になります。
今回は2015年から2018年までのバーガー売上を例に検証していきます。
下にハンバーガーショップの各年の売上金額を棒グラフで表したグラフを用意しました。

スクリーンショット 2022-10-07 104133.png

2015年の売上棒グラフからドリルすると、月とカテゴリーごとの売上を示したデフォルトのデータテーブルが表示されるように下記のドリルを定義をします。

drill_fields: [month,category,total_revenue]

スクリーンショット 2022-10-07 120450.png

このグラフだけでは、何月にどのカテゴリーがどれくらい売上があったのかが分かりにくいので変更していきたいと思います。
今回はカテゴリーごとに見る月別の売上金額の推移を把握したいので、折れ線グラフを設定します。
下記のLookMLで定義します。

    link: {
      label: "折れ線グラフ"
      url: "
      {% assign vis_config = '{\"type\": \"looker_line\"}' %}
      {{ link }}&vis_config={{ vis_config | encode_url }}&pivots=burger.category&toggle=dat,pik,vis&limit=5000"
    }

グラフを折れ線にするため「type : looker_line」で定義します。
その際 “\\”(バックスラッシュ)でEscapeする必要があるので忘れないように注意してください。
またカテゴリーでピボットする必要があるので、&pivots=burger.categoryを追加します。
作成したLookML画面は下記となります。

スクリーンショット 2022-10-07 131353.png

定義が完了したら、先ほどと同様に2015年の棒グラフをドリルダウンすると、「折れ線グラフ」というlinkが出てきます。

スクリーンショット 2022-10-06 094426.png

こちらをクリックすると、先ほどLookMLで定義したグラフが表示されます。
最初に見たデータテーブルとデータの中身は同じですが、折れ線グラフに変更することができました。
こちらの方が一目見て分かりやすいですね。

スクリーンショット 2022-10-07 131438.png

3.その他のカスタマイズ

さらに細かいカスタマイズをしたいときは以下の方法で試してください。
今回は折れ線グラフに「ポイントのスタイル:塗りつぶし」をカスタマイズした例を示します。

1.Exoloreで表示させたいビジュアリゼーションを作成する

2.作成できたらExplore右上の歯車アイコンをクリックし、[共有]を選択すると、短縮URLと展開URLの2種類が表示されるので、展開URLをコピーする

スクリーンショット 2022-10-06 101622.png

3.URLデコーダー(TAG indexなど)に貼り付けて、デコードする

4.デコードされたURLをコピーし、JSON文字列をエスケープ(freeformatterなど)する

スクリーンショット 2022-10-06 171757.png

5.正しいフォーマットが確認できたので、さきほどエスケープした文字列の中から追加したい情報を抜き出して下記のLookMLで定義をする


{% assign vis_config = ‘{  [ここにエスケープ文字列を入れる] }’ %}

今回は「ポイントのスタイル:塗りつぶし」を追加したいので、該当のところに\”point_style\”:\”circle\”を追加します。
(↓追加したLookML)

スクリーンショット 2022-10-07 132126.png

折れ線グラフに塗りつぶしのポイントが追加されました。

スクリーンショット 2022-10-07 132239.png

他にもグラフの形式を変更したいときは以下の公式ドキュメントに一覧が載っているので、LookMLダッシュボードのtypeパラメータを参照してください。

LookMLダッシュボードの要素の種類

(ちなみに・・・)
今回のようにlinkを設定すると、デフォルトのデータテーブル(すべて表示85,067,600)と折れ線グラフの2つのlinkが表示されました。
もしこのどちらかのグラフだけを表示させたい場合ですが、サポートによると現状の機能ではデフォルトのlinkを非表示にすることはできないそうです。。。

スクリーンショット 2022-10-07 132431.png

4.まとめ

Lookerは用途に応じて様々なビジュアリゼーションでデータを表現出来ますが、ドリルダウンしたデータにも適用できるか検証してみたところちゃんと適用されました。
ぜひ色んな機能を使って分かりやすいカスタマイズドリルダウンを作成してみてください。
ここまでご覧いただきありがとうございました。

参考URL:More powerful data drilling | Looker | Google Cloud

ページのトップへ