24
Help us understand the problem. What are the problem?

More than 1 year has passed since last update.

posted at

Power BI パレート図・ABC分析

パレート図・ABC分析

image.png
グラフの見た目はこちらの記事、DAXメジャーはこちらのウェビナーで紹介されたものを
組み合わせてみました。

この記事では3段階に分けて作っていきます。
STEP1-シンプルなパレート図を作る
STEP2-パレート図を色分けしてABC分析する 
STEP3-スライサーで色分けの境い目を変える

作り方

サンプルデータ

image.png

商品名 金額
商品A 60
商品B 40
商品C 180
商品D 30
商品E 120
商品F 50
商品G 60
商品H 20

手順

STEP1-パレート図

まず累積金額を計算するメジャーを作ります。

新しいメジャー
累積金額 = CALCULATE(
    SUM('テーブル1'[金額]),
    FILTER(
        ALLSELECTED('テーブル1'),
        ISONORAFTER(
            'テーブル1'[金額],   MAX('テーブル1'[金額]),   ASC,
            'テーブル1'[商品名], MAX('テーブル1'[商品名]), DESC
        )
    )
)

金額の大きい商品から順に並べた累積を計算します。
金額が同じだったら商品名順です。

IsOnOrAfterがよくわからない人は、こちらの記事 がオススメ。

次に 累積金額÷金額すべて の計算により比率(パレート線)を作ります。

新しいメジャー
パレート線 = 
DIVIDE(
    [累積金額],
    CALCULATE(
        SUM('テーブル1'[金額]), 
        ALLSELECTED('テーブル1')
    )
)

折れ線グラフ+縦棒グラフを選んで、このように項目セット
image.png

完成
image.png

同じ金額の項目が2つあった場合は商品名の昇順に並びます(商品Aと商品Gなど)

STEP2-ABC色分け

続いてABC分析のため、棒グラフを塗り分けます。

データの色 設定で fx を選びます。
image.png
次に出てくる設定画面で
パレート線(=金額の大きい順に累積した比率)が70%以内は赤、90%以内は黄、それ以上は青にします。
image.png

完成!
image.png

STEP3-スライサーで色分けの境界値を変える

ABC分析は70%、90%を閾値とすることが多いようですが、
これをスライサーで変更できるように作り変えてみます。

まずパラメータを2つ作ります。
image.png
1つ目のパラメータpara1。AグループとBグループの境目。
最初は70%として、5% 単位で動かせる設定にしておきます。
image.png
2つ目のパラメータpara2。 BグループとCグループの境目。
同じように作ります。
image.png

次にパラメータとパレート線から、カラーコードを返すメジャーを作ります。

新しいメジャー
ABC分析の色 = 
    IF( [パレート線] <= [para1 値],"#E66C37",   //赤のカラーコード
    IF( [パレート線] <= [para2 値],"#D9B300",   //黄のカラーコード
    "#118DFF"                                  //青のカラーコード
    )
    )

IF文のネストが深くて読みにくくなったらSWITCH文を使うとすっきりしますね。

別の書き方
ABC分析の色 = 
    SWITCH( TRUE,
        [パレート線] <= [para1 値], "#E66C37",  //赤のカラーコード
        [パレート線] <= [para2 値], "#D9B300",  //黄のカラーコード
        "#118DFF"                              //青のカラーコード
    )

※このABC分析の色メジャーが返すのは、カラーコードを表すただのテキストですよ。

そして データの色 の設定画面にて、
書式設定基準をABC分析の色が返す値にすると
image.png

完成!
image.png
グラフ下に置いたpara1とpara2を動かすと境界値が変わります。

試しに 60% と 95% にしてみました。
image.png

以上です!

最後までお読みいただき
ありがとうございました。

参考・関連情報

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
24
Help us understand the problem. What are the problem?