Forum Discussion
Waterfall visual: add additional disconnected bart
Hi community,
I have been struggeling now for some time to cretae a waterfall visual displaying three categories but only one breakdown.
What:
I would like to build a waterfall chart showing the three categories in example "Intro", "Start", "End".Only the category "Start" should be broken down by the subcategories "A","B","C".
In generall is there anyway to achive the supression of the breakdowns of "Intro" and "End" using the standard waterfall chart ?
Model:
There is a fact table that is connected and filtered by a date table. Furthermore there is a category table containing one column category showing the category values "Intro", "Start", "End". This table is discoonected from all other.
Does anyone had a similar issue in the past? I unfortunately could not find any ressources showing how to achive this using the standard waterfall chart.
Hi PowerToBI ,
In the standard Power BI waterfall chart, the running baseline is fixed and continuous across the entire visual.
The chart does not support restarting or resetting the baseline at an intermediate category. A baseline reset is only possible when using the automatic final Total column, or splitting the logic across separate visuals. Because of this built-in behavior, two categories cannot independently start from the same baseline within a single standard waterfall.
Consequently, a configuration where multiple categories e.g. Intro and Start independently originate from the same baseline cannot be achieved within a single instance of the standard Power BI waterfall visual.
Hope this helps.
Thank you.
12 Replies
- FBergamaschiSuper User
Please include, in a usable format, not an image, a small set of rows for each of the tables involved in your request and show the data model in a picture, so that we can import the tables in Power BI and reproduce the data model. The subset of rows you provide, even is just a subset of the original tables, must cover your issue or question completely. Alternatively, you can share your .pbix via some cloud service and paste the link here. Do not include sensitive information and do not include anything that is unrelated to the issue or question. Please show the expected outcome based on the sample data you provided and make sure, in case you show a Power BI visual, to clarify the columns used in the grouping sections of the visual.
Need help uploading data? click here
Want faster answers? click here
- PowerToBIFrequent Visitor
Hi FBergamaschi ,hi alish_b
of course. I hope this helps. otherwise I adjust.
KPI detail
In the very end: Intro shall show the value for full year 2024. Start should display YTD 2024 and End should display YTD 2025. The calculation of full year and YTD figures are not an issue.
Tables
The example tables are as follows:
1. CategoryTable
Category Index Intro 0 Start 1 End 2 2. BreakdownTable
Breakdown A B C 3. FactTable
Date Breakdown Amount Monday, January 1, 2024 A 100 Thursday, February 1, 2024 A 120 Friday, March 1, 2024 B 150 Monday, April 1, 2024 C 130 Wednesday, May 1, 2024 A 140 Saturday, June 1, 2024 B 160 Monday, July 1, 2024 C 170 Thursday, August 1, 2024 A 180 Sunday, September 1, 2024 B 190 Tuesday, October 1, 2024 C 200 Friday, November 1, 2024 A 210 Sunday, December 1, 2024 B 220 Wednesday, January 1, 2025 A 200 Saturday, February 1, 2025 B 210 Saturday, March 1, 2025 C 220 Tuesday, April 1, 2025 A 230 Thursday, May 1, 2025 B 240 Sunday, June 1, 2025 C 250 Tuesday, July 1, 2025 A 260 Friday, August 1, 2025 B 270 Monday, September 1, 2025 C 280 Wednesday, October 1, 2025 A 290
4. DateTable
Date Year Month Monday, January 1, 2024 2024 1 Tuesday, January 2, 2024 2024 1 Tuesday, January 2, 2024 2024 1 Wednesday, January 3, 2024 2024 1 Wednesday, January 3, 2024 2024 1 Thursday, January 4, 2024 2024 1 Thursday, January 4, 2024 2024 1 ... ... ... Wednesday, October 1, 2025 2025 1 - PowerToBIFrequent Visitor
Hi FBergamaschi , alish_b
Of course some here are the tables from my example.
In general and some more context. For the category Intro I want to display kpi FY 2024, for category Start YTD 2024 (Jan-Oct) and for End YTD 2025 (Jan-Oct) shall be displayed. The kpis I do know how to calculate.
The date table is filtering the fact table
1. CategoryTable
Category Intro Start End 2.breakdownTable
Breakdown A B C 3.FactTable
Date Breakdown Amount 01.01.2024 A 100 01.02.2024 A 120 01.03.2024 B 150 01.04.2024 C 130 01.05.2024 A 140 01.06.2024 B 160 01.07.2024 C 170 01.08.2024 A 180 01.09.2024 B 190 01.10.2024 C 200 01.11.2024 A 210 01.12.2024 B 220 01.01.2025 A 200 01.02.2025 B 210 01.03.2025 C 220 01.04.2025 A 230 01.05.2025 B 240 01.06.2025 C 250 01.07.2025 A 260 01.08.2025 B 270 01.09.2025 C 280 01.10.2025 A 290 4.date table
Date Year Month 01.01.2024 2024 1 02.01.2024 2024 1 02.01.2024 2024 1 03.01.2024 2024 1 03.01.2024 2024 1 04.01.2024 2024 1 ... .... ... 01.10.2025 2025 10 - AshokKunwarContinued Contributor
Hii PowerToBI
You want a single visual to display three different time calculations (Full Year 2024, YTD 2024, and YTD 2025) side-by-side. Because these categories don't exist in your data, a standard relationship will not work.
The Solution: The "SWITCH" Selection Pattern
Step 1: Ensure CategoryTable is Disconnected
Make sure there is no relationship line between your CategoryTable and any other table in the Model View. This allows the category to act as a "switch" without filtering the data prematurely.
Step 2: Create the Master KPI Measure
Use this measure to detect which row of the CategoryTable is being rendered and apply the specific date logic for each.
Dynamic Category KPI = VAR SelectedCat = SELECTEDVALUE('CategoryTable'[Category]) -- Basic Amount Sum VAR TotalAmount = SUM('FactTable'[Amount]) -- 1. Full Year 2024 (Intro) VAR FY2024 = CALCULATE( TotalAmount, 'DateTable'[Year] = 2024, REMOVEFILTERS('DateTable') ) -- 2. YTD 2024 (Start) - Jan to Oct VAR YTD2024 = CALCULATE( TotalAmount, 'DateTable'[Year] = 2024, 'DateTable'[Month] <= 10, REMOVEFILTERS('DateTable') ) -- 3. YTD 2025 (End) - Jan to Oct VAR YTD2025 = CALCULATE( TotalAmount, 'DateTable'[Year] = 2025, 'DateTable'[Month] <= 10, REMOVEFILTERS('DateTable') ) RETURN SWITCH( SelectedCat, "Intro", FY2024, "Start", YTD2024, "End", YTD2025, BLANK() )Step 3: Build the Visual
- Put Category from your CategoryTable on the X-Axis or Rows.
- Put Breakdown from your BreakdownTable in the Legend or Columns.
- Add the [Dynamic Category KPI] measure to the Values.
Summary for the Community
To show different time periods in one visual, use a disconnected table for your headers and a SWITCH measure to inject the specific CALCULATE logic for each header.
If this dynamic calculation solves your category-based KPI tracking, please mark this as the "Accepted Solution"!
- AshokKunwarContinued Contributor
HII PowerToBI
If this dynamic calculation solves your category-based KPI tracking, please mark this as the "Accepted Solution"!
- PowerToBIFrequent Visitor
Hi AshokKunwar , hi all
Thanks for the help. I tried these thing unfortunately without any success. Below a screenshot of the example model as well as the current visual outcome using the idea of AshokKunwar .
With all my tries I usually would either get the same picture as below or one that contains a breakdown for Intro as well which is not what I want to achive.
Any further tip would be high appreciated.
best regards
- AshokKunwarContinued Contributor
Hii PowerToBI
standard waterfall chart doesn't support "selective" breakdowns, you must trick the chart by putting both your main categories and your subcategories into the Category bucket of the visual, leaving the Breakdown bucket empty.
1. Create a "Waterfall Axis" Table
Create a new calculated table that contains every label you want to see on the X-axis in the exact order you want them.
WaterfallAxis = UNION( DATATABLE("Label", STRING, "Order", INTEGER, "Type", STRING, { {"Intro", 1, "Pillar"}, {"A", 2, "Breakdown"}, {"B", 3, "Breakdown"}, {"C", 4, "Breakdown"}, {"Start", 5, "Pillar"}, -- Or "End", depending on your logic {"End", 6, "Pillar"} } ) )Note: Ensure you set the Sort by Column for "Label" to the "Order" column.
2. Create the Dynamic Measure
You need a measure that calculates the correct value based on which label is being filtered on the axis.
Dynamic Waterfall Value = VAR CurrentLabel = SELECTEDVALUE('WaterfallAxis'[Label]) RETURN SWITCH( CurrentLabel, "Intro", [YourIntroMeasure], "A", CALCULATE([Amount], 'BreakdownTable'[Breakdown] = "A"), "B", CALCULATE([Amount], 'BreakdownTable'[Breakdown] = "B"), "C", CALCULATE([Amount], 'BreakdownTable'[Breakdown] = "C"), "Start", [YourStartTotalMeasure], "End", [YourEndTotalMeasure] )3. Configure the Visual
- Category: Use 'WaterfallAxis'[Label].
- Breakdown: Leave this Empty.
- Values: Use your [Dynamic Waterfall Value] measure.
Important Note on Totals
In a standard waterfall, the "Total" column is usually automatically generated. If you want "Start" or "End" to act as a "running total" or "summary" pillar, you may need to go to the Format Pane > Pillars and manually define "End" as a total, or ensure your DAX measure for that specific label returns the cumulative sum rather than a delta.
If this dynamic calculation solves your category-based KPI tracking, please mark this as the "Accepted Solution"!
- PowerToBIFrequent Visitor
- PowerToBIFrequent Visitor
Hi AshokKunwar ,
Thank you very much.
This was very helpful so far. With a little switch of the labels I was able to almost obtain what I am looking for.
Is there a way that the visual displays the data as follows.
The start label starts at the same level as the Intro. Then Breakdowns are added on top (done) and the End label is the total label for the chart (Start+Breakdowns). Currently it seems that Intro is the starting point for the chart and all other are breakdwon added on top.