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

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
Vanshikaw14
Frequent Visitor

Add total bar to bar chart when multiple values are selected

Hi,

I have a requirement where I have to add a total bar to a bar graph but it should be visible only when 2 or more values are selected in the slicer. Otherwise when only one value is selected it should show only that bar.

It should look like the below screenshots.

Vanshikaw14_0-1714825715726.pngVanshikaw14_1-1714825752700.png


Regards,

Vanshika

1 ACCEPTED SOLUTION
Greg_Deckler
Super User
Super User

@Vanshikaw14 OK, I was able to do it using the following measure coupled with a disconnected table. See PBIX attached below signature.

Measure = 
    VAR __Tiers = DISTINCT( 'Table'[Tier] )
    VAR __Count = COUNTROWS( __Tiers )
    VAR __ShowTotal = IF( __Count > 1, TRUE(), FALSE() )
    VAR __Tier = MAX( 'Tiers'[Tier] )
    VAR __Result = 
        SWITCH( TRUE(),
            __Tier IN __Tiers, SUMX( FILTER( 'Table', [Tier] = __Tier ), [Value] ),
            __Tier = "Total" && __ShowTotal, SUMX( 'Table', [Value] ),
            BLANK()
        )
RETURN
    __Result

@ me in replies or I'll lose your thread!!!
Instead of a Kudo, please vote for this idea
Become an expert!: Enterprise DNA
External Tools: MSHGQM
YouTube Channel!: Microsoft Hates Greg
Latest book!:
The Definitive Guide to Power Query (M)

DAX is easy, CALCULATE makes DAX hard...

View solution in original post

3 REPLIES 3
Greg_Deckler
Super User
Super User

@Vanshikaw14 OK, I was able to do it using the following measure coupled with a disconnected table. See PBIX attached below signature.

Measure = 
    VAR __Tiers = DISTINCT( 'Table'[Tier] )
    VAR __Count = COUNTROWS( __Tiers )
    VAR __ShowTotal = IF( __Count > 1, TRUE(), FALSE() )
    VAR __Tier = MAX( 'Tiers'[Tier] )
    VAR __Result = 
        SWITCH( TRUE(),
            __Tier IN __Tiers, SUMX( FILTER( 'Table', [Tier] = __Tier ), [Value] ),
            __Tier = "Total" && __ShowTotal, SUMX( 'Table', [Value] ),
            BLANK()
        )
RETURN
    __Result

@ me in replies or I'll lose your thread!!!
Instead of a Kudo, please vote for this idea
Become an expert!: Enterprise DNA
External Tools: MSHGQM
YouTube Channel!: Microsoft Hates Greg
Latest book!:
The Definitive Guide to Power Query (M)

DAX is easy, CALCULATE makes DAX hard...

Thank you @Greg_Deckler for the solution. It is solving my use case.

Greg_Deckler
Super User
Super User

@Vanshikaw14 Pretty sure that would require a disconnected table for your x-axis and then a measure that included the logic on whether to return a value or not. I'll see if I can mock it up or perhaps you could post sample data.


@ me in replies or I'll lose your thread!!!
Instead of a Kudo, please vote for this idea
Become an expert!: Enterprise DNA
External Tools: MSHGQM
YouTube Channel!: Microsoft Hates Greg
Latest book!:
The Definitive Guide to Power Query (M)

DAX is easy, CALCULATE makes DAX hard...

Helpful resources

Announcements
LearnSurvey

Fabric certifications survey

Certification feedback opportunity for the community.

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.