Join us for an expert-led overview of the tools and concepts you'll need to pass exam PL-300. The first session starts on June 11th. See you there!
Get registeredPower BI is turning 10! Let’s celebrate together with dataviz contests, interactive sessions, and giveaways. Register now.
Hi, I am trying to create a stacked bar chart which shows 4 products currently split by column and there are different phases of the product. I have attached sample data and expected output.
Is there any way to achieve this without having to unpivot the data?
The challenge I have is the data is already gone through ETL but due to new requirements need to make this work. Am I better off creating a reference query and carry out the unpivot transformation there?
Solved! Go to Solution.
Hi @nh27 ,
I made a sample for you with dax.
Measure = SWITCH(SELECTEDVALUE('Table'[Value]),
"Product A",COUNTROWS(FILTER('Table1',NOT(ISBLANK([Product A])))),
"Product B",CALCULATE( COUNTROWS(FILTER('Table1',NOT(ISBLANK([Product B])))),USERELATIONSHIP(Table1[Product B],'Table 2'[Value])),
"Product C",CALCULATE( COUNTROWS(FILTER('Table1',NOT(ISBLANK([Product C])))),USERELATIONSHIP(Table1[Product C],'Table 2'[Value])),
"Product D",CALCULATE( COUNTROWS(FILTER('Table1',NOT(ISBLANK([Product D])))),USERELATIONSHIP(Table1[Product D],'Table 2'[Value]))
)
Best Regards,
Wearsky
Hi @nh27 ,
I made a sample for you with dax.
Measure = SWITCH(SELECTEDVALUE('Table'[Value]),
"Product A",COUNTROWS(FILTER('Table1',NOT(ISBLANK([Product A])))),
"Product B",CALCULATE( COUNTROWS(FILTER('Table1',NOT(ISBLANK([Product B])))),USERELATIONSHIP(Table1[Product B],'Table 2'[Value])),
"Product C",CALCULATE( COUNTROWS(FILTER('Table1',NOT(ISBLANK([Product C])))),USERELATIONSHIP(Table1[Product C],'Table 2'[Value])),
"Product D",CALCULATE( COUNTROWS(FILTER('Table1',NOT(ISBLANK([Product D])))),USERELATIONSHIP(Table1[Product D],'Table 2'[Value]))
)
Best Regards,
Wearsky
Thank you very much, this worked a charm!
Hi @nh27 - You can create a reference query and then apply the unpivot operation like this:
This will give you a more dynamic and flexible structure, where phases are represented in a single column, and you can easily build stacked bar charts based on these dynamically.
pls check and let know if it works.
Proud to be a Super User! | |
Hi, thanks for this. I have already test this method and it worked, just wasn't sure if there was another way to do this via DAX Measures and whatnot.
create separate measure for each phase in Power BI as like below:
Phase1_Measure = SUM(Products[Phase1])
Phase2_Measure = SUM(Products[Phase2])
Phase3_Measure = SUM(Products[Phase3])
Proud to be a Super User! | |
User | Count |
---|---|
84 | |
79 | |
71 | |
48 | |
43 |
User | Count |
---|---|
111 | |
54 | |
50 | |
40 | |
40 |