metabaseでパレート図を作ってみた(SQLite)
副問い合わせを用いたものは割とよくありますが、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)
- コンボを選択
- 「表示」の「累積比率」を展開し、どちらの軸で「左」を選択する。
- 「表示」の「実績」を展開し、どちらの軸で「右」を選択する。
- 「表示」の目標ラインをオンにして、目標値に「0.8」を記述する
- 「データ」の「累積比率」の歯車アイコンを押し、スタイルを「percent」にする
できたグラフ
-- データの絞り込み 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の目標ライン機能を使いたかったので、
左側に累計比率をおいている(違和感があるが・・・)
そのほか
- 「目標ライン」の点線が、なぜかずれる(たぶんmetabaseのバグ)
Author And Source
この問題について(metabaseでパレート図を作ってみた(SQLite)), 我々は、より多くの情報をここで見つけました https://qiita.com/taka-vagyok/items/c924ec0d9c18f314539a著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .