Forum Discussion

AGo's avatar
AGo
Post Patron
4 years ago
Solved

Bar-chart conditional formatting

In the new format pane of the new version I can no longer find the Conditional formatting option for bar chart.

Is there a way to format the bar color in some way (dax maybe)? I've got x-axis=month, legenda=year, y-axis=revenues: I'd like to simply filter only last two years and show current year bar in red if the revenue is lower than previous year.

 

Thanks for support!

  • Anonymous's avatar
    Anonymous
    4 years ago

    Hi AGo ,

     

    If you have something in the legend field, you cannot use formatting.

    It is suggested to put year and month into x-axis and set color.

    You could create a measure like

    Color =
    VAR _currentyear =
        CALCULATE (
            SUM ( 'Table'[revenues] ),
            FILTER (
                ALLSELECTED ( 'Table' ),
                [month] = MAX ( 'Table'[month] )
                    && [year] = MAX ( 'Table'[year] )
            )
        )
    VAR _lastyear =
        CALCULATE (
            SUM ( 'Table'[revenues] ),
            FILTER (
                ALLSELECTED ( 'Table' ),
                [month] = MAX ( 'Table'[month] )
                    && [year]
                        = MAX ( 'Table'[year] ) - 1
            )
        )
    RETURN
        IF ( _currentyear < _lastyear, "red" )
    

    Then add the measure into data colors.

     

    You could check more details from my attachment.

     

     

    Best Regards,

    Stephen Tao

     

    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

2 Replies

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi AGo ,

     

    If you have something in the legend field, you cannot use formatting.

    It is suggested to put year and month into x-axis and set color.

    You could create a measure like

    Color =
    VAR _currentyear =
        CALCULATE (
            SUM ( 'Table'[revenues] ),
            FILTER (
                ALLSELECTED ( 'Table' ),
                [month] = MAX ( 'Table'[month] )
                    && [year] = MAX ( 'Table'[year] )
            )
        )
    VAR _lastyear =
        CALCULATE (
            SUM ( 'Table'[revenues] ),
            FILTER (
                ALLSELECTED ( 'Table' ),
                [month] = MAX ( 'Table'[month] )
                    && [year]
                        = MAX ( 'Table'[year] ) - 1
            )
        )
    RETURN
        IF ( _currentyear < _lastyear, "red" )
    

    Then add the measure into data colors.

     

    You could check more details from my attachment.

     

     

    Best Regards,

    Stephen Tao

     

    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

    • Saimadhav007's avatar
      Saimadhav007
      Regular Visitor
      • Hello, 
      • What if I will be having continous 12 months. Just need to apply conditional formatting to all months in same bar chart. 
      • Because the previous answer is not working