LoginSignup
2
1

More than 3 years have passed since last update.

metabaseでパレート図を作ってみた(SQLite)

Last updated at Posted at 2020-12-18

副問い合わせを用いたものは割とよくありますが、windows関数をつかってパレート図のデータを作る方法がみつからず、
ちょっと作ってみたときのメモです。

データが少ないのでもしかしたらうまくいかないケースがあるかもしれません ^^;

準備

sqlite に man_hour というテーブルを作成して、以下のデータを投入し、
metabaseから接続しておく。

名前, 実績
hoge,   2
hoge,   2
fuga,   3
test,   2

グラフの作成

質問内容(記述したSQL)

-- データの絞り込み and ソート
with dataitem as (
select
    sum(実績) as 実績,
    名前
from man_hour
group by
    -- グルーピングしておく
    名前
order by
    -- ここでグルーピングしたものを多い順に並べ替えておく
    sum(sum(実績)) over (partition by 名前) desc
)

-- グラフ用
select 
    実績,
    -- 最初のデータから現在の行までを合計したものを、すべての合計で割る
    sum(実績) over (rows between unbounded preceding and current row) / sum(実績) over () as 累積比率,
    名前
from dataitem

グラフの設定(metabase)

  1. コンボを選択
  2. 「表示」の「累積比率」を展開し、どちらの軸で「左」を選択する。
  3. 「表示」の「実績」を展開し、どちらの軸で「右」を選択する。
  4. 「表示」の目標ラインをオンにして、目標値に「0.8」を記述する
  5. 「データ」の「累積比率」の歯車アイコンを押し、スタイルを「percent」にする

できたグラフ

sample.png

グラフの左右の軸は反対にしたいが、metabaseの目標ライン機能を使いたかったので、
左側に累計比率をおいている(違和感があるが・・・)

そのほか

  • 「目標ライン」の点線が、なぜかずれる(たぶんmetabaseのバグ)
2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1