cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
SHDJason
Advocate II
Advocate II

How to display different measures using a selector

Hi. I could not find the answer to this in other places, so I'll ask it here.  

 

I would like to create a selector that will render different measures on the same chart.

 

For instance, I have a trend chart that shows users over time. I'd like to have a selector on the side so people can switch between users and transactions and revenue and have the same chart render that measure.  

 

Thanks.

1 ACCEPTED SOLUTION
Phil_Seamark
Microsoft
Microsoft

I've managed to acheive this using a measure table.

 

Download the following PBIX file

 

https://1drv.ms/u/s!AtDlC2rep7a-jkiRG_LyHcv0RSXI

 

You'll notice on the 2nd page called 'All Sorts' you can choose different Measure names from the box in the top left and it works.

 

I create a static table called [Dynamic] that carries measures and then reference them in a calculated measure on the fly

 

 


To learn more about DAX visit : aka.ms/practicalDAX

Proud to be a Datanaut!

View solution in original post

16 REPLIES 16
jkenne01
Frequent Visitor

Hi,

 

An addtional issue I have is that the 2 measures I am toggling need to display in different formats. 1 to 1 decimal place and the other to 4 decimal places. This solution works for me apart from being able to dynamically be able to set the format of the measure returned.

 

Does anyone know if this is possible?,

 

Thanks in advance for your help,

 

Cheers,

Jack

 

Google: “Dax format”

Thanks for the reply but FORMAT returns a text value so my measures would be converted to text. So this won't work unfortunetly. 

Anonymous
Not applicable

I'm having the same problem where I have to choose one data type for my entire group of measures. For example, I can't use decimal for one measure, and integer for another. It's either all decimal or all integer.

 

Has anyone found a solution for having a metric selector slicer that allows different data types for different measures?

Anonymous
Not applicable

Hi DataPerson,

 

Have you tried  solution?
https://1drv.ms/u/s!AtDlC2rep7a-jkiRG_LyHcv0RSXI

It works for me now.  I've created a "Dynamic" query and then used the DAX "Switch" command to pre-select the set of measures.

 

Are your measures actual measures or calculated within the SWITCH measure? I wonder if they are separate measures each formatted themselves, and the SWITCH just calls them, if the formatting will be honored.

Hi,

 

Thanks again for the reply. The measures are real measures. One to 1 decimal place, the other to 4 decimal place. My issues seems to bethat I need to format the field in the table that will display the measure based on the selection. And the overides the format of the individual measure.

 

The measure I am displaying is :

 

 Impacts/TVR = IF(ISCROSSFILTERED('Measure Dimensions'[Measure]),SWITCH( TRUE(), VALUES('Measure Dimensions'[Measure]) = "Impacts",[Impacts],VALUES('Measure Dimensions'[Measure]) = "TVR",[TVR],BLANK()),BLANK())

 

Impacts is 1 decimal place. TVR is 4 decimal places. If I set the Impacts/TVR measure to General (Auto) it actual displays 4 decimals for Impacts and 2 for TVR. Which is odd!

 

 

Have you set formatting in the table itself? Maybe set it to default/auto and see if it will detect the formatting of the measures
v-ljerr-msft
Microsoft
Microsoft

Hi @SHDJason,

 

Based on my testing, the solution provided above should work in your scenario. Have you tried them? If you still have any question feel free to post here.Smiley Happy

 

In addition, if the solution works, could you accept the corresponding reply as solution to help others who may have similar issue easily find the answer and close this thread?

 

Regards

sorry, i haven't had a chance to test the solution yet. I'll close it as soon as i do. should be this week.

Phil_Seamark
Microsoft
Microsoft

I've managed to acheive this using a measure table.

 

Download the following PBIX file

 

https://1drv.ms/u/s!AtDlC2rep7a-jkiRG_LyHcv0RSXI

 

You'll notice on the 2nd page called 'All Sorts' you can choose different Measure names from the box in the top left and it works.

 

I create a static table called [Dynamic] that carries measures and then reference them in a calculated measure on the fly

 

 


To learn more about DAX visit : aka.ms/practicalDAX

Proud to be a Datanaut!

View solution in original post

Anonymous
Not applicable

This is perfect!

This worked great. Thanks for sharing!

Sean
Community Champion
Community Champion
dkay84_PowerBI
Microsoft
Microsoft

You need to do the following:

 

1. Create a table called "Measures" with 2 columns

  • Column 1 = MeasureName
  • Column 2 = MeasureID

You will fill up column 1 with the names of the measures you wish to show (i.e. transactions, revenue, etc.)

Column 2 is just an index (1,2,3,etc.)

 

MeasureName  |  MeasureID

Transactions      |          1

Revenue            |          2

etc.

 

2. Create a measure with the following syntax:

 

DisplayMeasure = SWITCH( TRUE(), MIN ( Measures[MeasureID] ) = 1, [Transactions Measure], MIN ( Measures[MeasureID ) = 2, [Revenue Measure] )

 

Expand this as neccessary.

 

Now create a slicer with Measure table column MeasureName .

 

In the chart or table , use the measure DisplayMeasure as your values field, and when you select the slicer, the chart will display the appropriate measure.

Anonymous
Not applicable

This is perfect. Worked just fine.

Helpful resources

Announcements
UG GA Amplification 768x460.png

Launching new user group features

Learn how to create your own user groups today!

November Power BI Update 768x460.png

Check it Out!

Click here to read more about the November 2021 Updates!

M365 768x460.jpg

Microsoft 365 Collaboration Conference | December 7–9, 2021

Join us, in-person, December 7–9 in Las Vegas, for the largest gathering of the Microsoft community in the world.