Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Anonymous
Not applicable

How To create Distribution Chart(Bell chart) in Power BI

Hi ,

I'm Tableau Developer and very new to Power BI and got new request from my team to build a Distribution Chart(Bell Chart) in Power BI.

 

I have 2 Columns

1. Risk Score : I have created New Column(color legend) as (if risk score is LOw(>0<40) , Medium(>41<70), High(>71<100) by risk Score)

2. Number of Part Number: i have taken count

 

 

 

Kindly help me  to build a below chart in power BI

 

Screenshot 2021-07-27 135615.jpg

 

 

 

 

 

 

 

4 ACCEPTED SOLUTIONS

Hi @Anonymous 

 

For the color legend, you could split the line into 3 lines. Create measures for 3 Risk score separately and put all of them into Values. Then format them with different colors and turn on shade area. 

 

f(x) High = IF('Normal Distribution'[X]<FLOOR([x-2],1)||'Normal Distribution'[X]>FLOOR([x+2],1),[f(x)],BLANK())

 

f(x) Medium = IF(('Normal Distribution'[X]>FLOOR([x-2],1)&&'Normal Distribution'[X]<FLOOR([x-1],1))||('Normal Distribution'[X]>FLOOR([x+1],1)&&'Normal Distribution'[X]<FLOOR([x+2],1)),[f(x)],BLANK())

 

f(x) Low = IF('Normal Distribution'[X]>FLOOR([x-1],1)&&'Normal Distribution'[X]<FLOOR([x+1],1),[f(x)],BLANK())

 

For the count of Part number shown in Y axis, I don't know how to deal with it. Sorry.

 

Regards,
Community Support Team _ Jing
If this post helps, please Accept it as the solution to help other members find it.

View solution in original post

Hi @Anonymous 

 

All of f(x) High / Medium / Low measures should be placed in the Line values rather than Column values. You can remove the original f(x) measure from Line values to check the result. They should connect then. Let me know if it works or not.

 

Regards,

Jing

View solution in original post

Hi @Anonymous 

 

You should move them to Line values area below. 

080503.jpg

Jing

View solution in original post

Hi @Anonymous 

 

Seems close, we need to do some formattings further. 

 

  • Under X axis, change Type from Continuous to Categorical
  • Right click on the X field in Shared axis and select Show items with no data option.
  • On the chart, click ... and select Sort by X and Sort ascending.

080601.jpg

 

And in the formulas, change all > and < signs to >= and <= to connect the boundry values. 

 

Jing

View solution in original post

11 REPLIES 11
lbendlin
Super User
Super User

Use the NORM.DIST() DAX function across your data and plot it in a line chart.  NORM.DIST function (DAX) - DAX | Microsoft Docs

 

Normal Distribution (Gauss Curve) in Power BI (Part I) - YouTube

Anonymous
Not applicable

Hi Ibendlin,

 

Thank you for quick response.

 

I have gone through the youtube videos and came up with below chart, but i would like to show in

Y axis  as count of Part number & color legend as low, medium and high.

 

Kindly help me to build it as above sample chart.

 

For your reference :

Normal Distribution =
var minval=FLOOR([x-3],1)
var maxval=CEILING([x+3],1)
return
SELECTCOLUMNS(CALENDAR(minval,maxval),"X",INT([Date]))
 
x-3 = [Mean Value]-3*[Std Dev]
x+3 = [Mean Value]+3*[Std Dev]
 
f(x) = EXP((VALUES('Normal Distribution'[X])-[Mean Value])^2/(2*[Std Dev]^2)*-1)/(SQRT(2*PI())*[Std Dev])
 
mu-1 = IF('Normal Distribution'[X]=FLOOR([x-1],1),[f(x)],BLANK())
 
mu+1 = IF('Normal Distribution'[X]=FLOOR([x+1],1),[f(x)],BLANK())
 
mu-2 = IF('Normal Distribution'[X]=FLOOR([x-2],1),[f(x)],BLANK())
 
mu+2 = IF('Normal Distribution'[X]=FLOOR([x+2],1),[f(x)],BLANK())
 
High - Red
Medium - Yellow
Low - Green
 
 

Screenshot 2021-07-28 125948.png

Hi @Anonymous 

 

For the color legend, you could split the line into 3 lines. Create measures for 3 Risk score separately and put all of them into Values. Then format them with different colors and turn on shade area. 

 

f(x) High = IF('Normal Distribution'[X]<FLOOR([x-2],1)||'Normal Distribution'[X]>FLOOR([x+2],1),[f(x)],BLANK())

 

f(x) Medium = IF(('Normal Distribution'[X]>FLOOR([x-2],1)&&'Normal Distribution'[X]<FLOOR([x-1],1))||('Normal Distribution'[X]>FLOOR([x+1],1)&&'Normal Distribution'[X]<FLOOR([x+2],1)),[f(x)],BLANK())

 

f(x) Low = IF('Normal Distribution'[X]>FLOOR([x-1],1)&&'Normal Distribution'[X]<FLOOR([x+1],1),[f(x)],BLANK())

 

For the count of Part number shown in Y axis, I don't know how to deal with it. Sorry.

 

Regards,
Community Support Team _ Jing
If this post helps, please Accept it as the solution to help other members find it.

Anonymous
Not applicable

Hi Jing,

 

Thank you for your reply.

 

I just  applied f(x) High formula, I'm getting below result. 

 

Manasa_Rao_0-1627905034463.png

 

Please do let me know if it is possible to connect.

Hi @Anonymous 

 

All of f(x) High / Medium / Low measures should be placed in the Line values rather than Column values. You can remove the original f(x) measure from Line values to check the result. They should connect then. Let me know if it works or not.

 

Regards,

Jing

Anonymous
Not applicable

Hi Jing,

 

When i applied your formula i got this result.

 

Manasa_Rao_0-1628136844220.png

 

 

Hi @Anonymous 

 

You should move them to Line values area below. 

080503.jpg

Jing

Anonymous
Not applicable

Hi Jing,

Is this correct?

 

Manasa_Rao_0-1628160420716.png

 

Hi @Anonymous 

 

Seems close, we need to do some formattings further. 

 

  • Under X axis, change Type from Continuous to Categorical
  • Right click on the X field in Shared axis and select Show items with no data option.
  • On the chart, click ... and select Sort by X and Sort ascending.

080601.jpg

 

And in the formulas, change all > and < signs to >= and <= to connect the boundry values. 

 

Jing

Anonymous
Not applicable

Hi Jing,

 

 

Manasa_Rao_1-1628224697032.png

 

you are awesome 🙂 fnally i got the view but is there any way to do the same chart with Variance % & Count of Parts as shown below.

 

{0B8C0237-E532-49E3-9B52-EC448E60FE66&#125;.png

 

 

You can consider creating measures to get the Variance % & Count of Parts, and put them in multi-row card visuals.

Power BI Data Visualization Best Practices Part 6: Multi-Row Cards (instructorbrandon.com)

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.

Top Solution Authors