Safie Engineers' Blog!

Safieのエンジニアが書くブログです

OSS BIツール「Lightdash」のカスタムチャート機能を触ってみた

はじめに

こんにちは、データドリブン推進室でデータエンジニアをやっている鶴です!
先日、OSS BIツールについてのブログ記事を同じチームの小宮が投稿しておりましたが、その中でご紹介していた「Lightdash」でカスタムチャートという機能があります。

個人的に気になっていた機能だったので実際に触ってみてどのような感じで使えるのか、グラフはどんな感じになるのかご紹介したいと思います!

Lightdashのカスタムチャートとは

Lightdashには公式ドキュメントに記載があるように標準でさまざまなチャートを使うことができます。
2025/06時点では以下の10個のチャートがあり、普通に使う分には困らない感じです。

  • 表 (Table)
  • 円グラフ (Pie chart)
  • ファネルチャート (Funnel chart)
  • 棒グラフ (Bar chart)
  • 面グラフ (Area chart)
  • 折れ線グラフ (Line chart)
  • 横棒グラフ (Horizontal bar chart)
  • 散布図 (Scatter chart)
  • 複合グラフ (Mixed chart)
  • 数字表示 (Big Value) 参考:積み上げ棒グラフのイメージ

更にLightdashではビジュアライゼーションの表現の幅を上げる機能としてカスタムチャート機能があります。
この機能はVega‑Liteをベースとした高度なビジュアライゼーション機能で、Lightdash上で標準グラフではできないようなグラフスタイルや細かい設定をJSONベースで作成できます。
(なお、こちらの機能は公式ドキュメントに記載があるようにまだベータ版となっておりますのでご注意ください)

使い方としてはとても簡単で以下のようにしていくと使えます。

  • 「Query from tables」で対象テーブルを開く

  • 対象ディメンションとメトリクスを選択し、Chartの「Configure」をクリック

  • チャート設定の「Chart type」のリストの中にある「Custom」をクリック

  • JSON編集画面が出てきます(簡単に編集できますね!)

またこのカスタムチャート機能ですが最近のアップデートでテンプレート機能が搭載され、より触りやすくなりました!

今回は気になったいくつかのチャートを試しに作ってみてどんなグラフができるのか試してみます!

カスタムチャートを触ってみる

最近実装されたテンプレートはカスタムチャートを開いた時に表示される「+Insert template」から選ぶことができるようです。

テンプレートをクリックするとJSONコードが生成され、自動的に集計対象がマッピングされる感じになってます。

このfieldで利用されている項目はResultsの下にあるSQLで自動生成されたSQLの項目名を利用しているようです。

なお、利用する項目によってうまく表示されなかったりするのでその場合は編集して調整して利用しましょう。

それでは気になっていたグラフをそれぞれ見ていきたいと思います!

  • 棒グラフ (Bar chart)
    テンプレートを利用して適当に作成したサンプルデータの商品カテゴリと売上を使って棒グラフを選んでみました。

    テンプレートを使うことでワンクリックで棒グラフが作られました!
    当たり前ではありますが見た目は標準の棒グラフと変わらない感じですね。

  • ヒートマップ
    会員ランクと地域の会員平均年齢を使ってテンプレートを使ってみましたがうまく項目が選ばれなかったため手動で編集し作成してみました。

現在ヒートマップは標準グラフにはなく、カスタムチャートのみの機能になるためこちらを使うことになりそうですね。

  • バブルチャート
    商品カテゴリと売上、平均単価、平均顧客年齢を使い散布図のバブルチャートを作成してみました。

    軸のscaleプロパティで年齢のスケールを30歳以上にすることで見やすくしています。
    おそらく標準の散布図ではサイズオプションがなかったためバブルチャートは作れないと思われますので利用したい方はこちらを使うことになるかなと思います。

  • 分散積み上げ棒グラフ(人口ピラミッド)
    次はテンプレートにないものを作ってみます。
    vega-liteのexampleを眺めていて気になった人口ピラミッドです。
    サンプルコードを見よう見まねで作ってみたところいけました…!

    こういった手の込んだグラフはBIツールで作る経験がなかったので作れるんだなと感動しちゃいました。。。
    こういったチャートが作れるのはメリットですね。

  • Tableauのリファレンスライン的な平均ライン
    最後に棒グラフ上に平均ラインを表示させるexampleも試してみましたが苦戦しつつも表示できました。

    なんだかんだ使うことありそうなラインです。
    コードの工夫の仕方によっては目標値等のラインを設定できるのではと思います。

最後に

気になっていたカスタムチャートのいくつかのグラフや機能を触ってみました。
Lightdashはまだまだ成長の段階で他のBIと比べてビジュアライゼーションの面で実現できないことがあったりしますが、このカスタムチャート機能を使うことで痒いところに手が届くいい機能だなと思います。

しかしながらUIでぽちぽちっとグラフを作るようなBIツールの本来の操作と比べたらやはり難しい部分もあり、JSONコードを編集して作るのは苦労する面もありますのでChatGPT先生等にご教示いただきながら作ってみるといいかもしれません。
公式サイトにはサンプルコードがあるので流用できる部分も多いと思います。

またこのLightdashですが2025年6月現在でも高頻度でアップデートが行われており、今後も機能がさらに充実していくと思いますし、自分自身もかなり期待しています!

Lightdashのチャート機能が気になっている方々の参考になれば幸いです!

© Safie Inc.