Don't miss your chance to take the Fabric Data Engineer (DP-700) exam on us!
Learn moreWe've captured the moments from FabCon & SQLCon that everyone is talking about, and we are bringing them to the community, live and on-demand. Starts on April 14th. Register now
This is a chart created by my colleague in power point, manually using stacked barchart and remove the unnecessary bars.
I am trying to recreate this 'Pillar-Bridge-Pillar' logic in Power BI, where each month starts with a Total Backlog pillar(stacked: grey, yellow, green), followed by floating bars for Order Intake(red) and Turnover(green), leading into the next month's Backlog.
is it really feasible to do this in power bi?
or is there an alternative way to achieve this? like alternative chart to represent
Solved! Go to Solution.
Hi @frankiekho ,
Based on the specifications I can see 3 options to generate the chart:
Check the details below
This step needs to be done for Visual Calculations and new measures
ID column is to make the sorting of the categories
Visual Calculations
Pillar Current BO = IF([Category] = "Pillar", [Current BO])
Pillar Next Month = IF([Category] = "Pillar", [Next Month BO])
White Space = IF([Category] = "Current", [Next Month BO] + [Current BO])
Current OI cat = =IF([Category] = "Current", [Current OI])
Turnover = IF([Category] = "Turnover", [Expected Turnover])
Documentation: https://learn.microsoft.com/en-us/power-bi/transform-model/desktop-visual-calculations-overview
New Measures
Current BO Cat = IF(SELECTEDVALUE(Categories[Category]) = "Pillar", [Current BO])
Next Month BO Cat = IF(SELECTEDVALUE(Categories[Category]) = "Pillar", [Next Month BO])
Current OI Cat = IF(SELECTEDVALUE(Categories[Category]) = "Current", [Current OI])
White Space Cat = IF(SELECTEDVALUE(Categories[Category]) in {"Current", "Turnover"}, [Current BO] + [Next Month BO])
Turnover Cat = IF(SELECTEDVALUE(Categories[Category]) = "Turnover", [Expected Turnover])
Calculation Groups
This will allow you to create the visual without the need for additional measures or new tables however be aware that if you are not used to work with calculations groups after creating them you cannot use implict measures on your visuals.
Current + Next Month = [Current BO] + [Next Month BO]
Pillar = IF( ISSELECTEDMEASURE([Current BO], [Next Month BO]), SELECTEDMEASURE())
Current = if(ISSELECTEDMEASURE([Current OI], [Current + Next Month]), SELECTEDMEASURE())
Turnover = if(ISSELECTEDMEASURE([Expected Turnover], [Current + Next Month]), SELECTEDMEASURE())
Final results for all the 3 options:
Please see file attach with all 3 options.
On a final note if you don't want to show the Pillar, Current, Turnover on the X-axis you can replace those values by the initial letter only or if you want there is a possibility to add only the dates based on a new measure and the usage of the label details. Let me know if you want to have that guide.
Regards
Miguel Félix
Proud to be a Super User!
Check out my blog: Power BI em PortuguêsHi @frankiekho ,
Thank you for reaching out to the Microsoft Fabric Community Forum.
Could you please let us know if the issue has been resolved? I wanted to check if you had the opportunity to review the information provided by @MFelix . If you still require support, please let us know, we are happy to assist you.
Thank you.
Hi @frankiekho ,
You can do this using some DAX and some categorization of your calculations.
I was able to get to something similar to this:
This can have some additionals tweeks but if you can provide a sample data in order for the adjustments to be inline with you data I appreciate.
Regards
Miguel Félix
Proud to be a Super User!
Check out my blog: Power BI em PortuguêsChart Month,Current_BO,Current_OI (Red bar),Next_Month_BO,Expected Turnover(green bar)
2023-10-01,8000,2000,8000,2000
2023-11-01,8000,1900,7200,2700
2023-12-01,7200,1750,6900,2050
2024-01-01,6900,2050,6400,2550
2024-02-01,6400,2300,6000,2700
2024-03-01,6000,2100,5700,2400
My Data Structure: I am starting with three main tables:
Table 1: Backlog (BO) – Monthly snapshots of our total backlog value.
Table 2: Order Intake (OI) – The value of new orders received.
Table 3: Date Table – A neutral calendar table used to connect the two fact tables.
What I have done so far:
To show the "Next Month's" Order Intake alongside the "Current Month's" Backlog, I have physically shifted the dates in my OI Table.
I created a new column in the OI table where I subtract 1 month from the original date (e.g., a November order is now dated as October).
I have joined the Date Table to the Backlog[Date] and the OI[Shifted_Date] using a 1-to-Many relationship.
The Logic & Formula: The Turnover represents what was processed during the transition. My logic for the calculation is:
(Current_BO + Current_OI) - Next_Month_BO = Turnover
Hi @frankiekho ,
Thank you for the information one additional question if you allow me, in the image you provided there is also a yellow part on top of the grey/green bar what is that value? Do you need it?
Just to be clear:
Is this correct has I refer I see a yellow part also.
Regards
Miguel Félix
Proud to be a Super User!
Check out my blog: Power BI em PortuguêsHi @MFelix
To clarify the visual structure and the logic I am using (in ppt):
The First Pillar (Total Backlog): The stacked bars you see (Grey, Green, Yellow) all represent the Current Month's Backlog. These are simply sub-categories (e.g., Overall BO, Specific Item A, and Item B). For the sake of the calculation, you can treat this as a single Total BO pillar.
The Second Bar (Order Intake - Red): This represents the Current OI. Because I have shifted my data, this red bar shows the new orders received that will impact the transition to the next month.
The Third Bar (Turnover - Green): This is my calculated Turnover. It represents the volume produced/shipped from the 'pool' of the Current Backlog and the new Order Intake.
The Following Pillar: This is the Next Month’s BO, which represents the remaining status after the Turnover has been subtracted.
I am looking for the best way to represent this 'Movement' in a clustered or waterfall-style format where the relationship between these four values is mathematically consistent across the X-axis."
Hi @frankiekho ,
Based on the specifications I can see 3 options to generate the chart:
Check the details below
This step needs to be done for Visual Calculations and new measures
ID column is to make the sorting of the categories
Visual Calculations
Pillar Current BO = IF([Category] = "Pillar", [Current BO])
Pillar Next Month = IF([Category] = "Pillar", [Next Month BO])
White Space = IF([Category] = "Current", [Next Month BO] + [Current BO])
Current OI cat = =IF([Category] = "Current", [Current OI])
Turnover = IF([Category] = "Turnover", [Expected Turnover])
Documentation: https://learn.microsoft.com/en-us/power-bi/transform-model/desktop-visual-calculations-overview
New Measures
Current BO Cat = IF(SELECTEDVALUE(Categories[Category]) = "Pillar", [Current BO])
Next Month BO Cat = IF(SELECTEDVALUE(Categories[Category]) = "Pillar", [Next Month BO])
Current OI Cat = IF(SELECTEDVALUE(Categories[Category]) = "Current", [Current OI])
White Space Cat = IF(SELECTEDVALUE(Categories[Category]) in {"Current", "Turnover"}, [Current BO] + [Next Month BO])
Turnover Cat = IF(SELECTEDVALUE(Categories[Category]) = "Turnover", [Expected Turnover])
Calculation Groups
This will allow you to create the visual without the need for additional measures or new tables however be aware that if you are not used to work with calculations groups after creating them you cannot use implict measures on your visuals.
Current + Next Month = [Current BO] + [Next Month BO]
Pillar = IF( ISSELECTEDMEASURE([Current BO], [Next Month BO]), SELECTEDMEASURE())
Current = if(ISSELECTEDMEASURE([Current OI], [Current + Next Month]), SELECTEDMEASURE())
Turnover = if(ISSELECTEDMEASURE([Expected Turnover], [Current + Next Month]), SELECTEDMEASURE())
Final results for all the 3 options:
Please see file attach with all 3 options.
On a final note if you don't want to show the Pillar, Current, Turnover on the X-axis you can replace those values by the initial letter only or if you want there is a possibility to add only the dates based on a new measure and the usage of the label details. Let me know if you want to have that guide.
Regards
Miguel Félix
Proud to be a Super User!
Check out my blog: Power BI em Portuguêshi @MFelix the solution is perfect. i have adjusted it to my needs. but how do i add an extra line trend?
i created a measure
If you have recently started exploring Fabric, we'd love to hear how it's going. Your feedback can help with product improvements.
A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.
Share feedback directly with Fabric product managers, participate in targeted research studies and influence the Fabric roadmap.
| User | Count |
|---|---|
| 53 | |
| 37 | |
| 35 | |
| 19 | |
| 17 |
| User | Count |
|---|---|
| 74 | |
| 70 | |
| 39 | |
| 35 | |
| 23 |