Forum Discussion

Agent47's avatar
Agent47
Helper I
1 year ago
Solved

Data Bar conditional formatting

In tableau , this visual uses a legend for colouring.

In power BI , the closest I could get to is this. 
Can I somehow recreate colours in Data Bar conditional formatting so that it matches the tableau visual.

 

  • Anonymous's avatar
    Anonymous
    1 year ago

    Hi Agent47 ,

     

    As danextian said, you need to check a measure first:

    Again, you can continue to define the conditional format under each country, and here I've assigned three colors to [Total Profit] equals Maximum Minimum as well as Middle under Canada.

    VAR RectColor =
        SWITCH (
            SELECTEDVALUE ( 'financials'[Country] ),
            "Canada",
                VAR __vals =
                    CALCULATETABLE (
                        ADDCOLUMNS (
                            SUMMARIZE ( 'financials', 'financials'[Country], 'financials'[Product] ),
                            "@TotalProfit", [Total Profit]
                        ),
                        ALLSELECTED ( 'financials'[Product] )
                    )
                VAR __minvalue =
                    MINX ( __vals, [@TotalProfit] )
                VAR __maxvalue =
                    MAXX ( __vals, [@TotalProfit] )
                VAR __color =
                    SWITCH (
                        TRUE (),
                        [Total Profit] = __maxvalue, "#06B050",
                        [Total Profit] = __minvalue, "#D41F26",
                        "#3b3a39"
                    )
                RETURN
                    __color,
            "France", "Red",
            "Germany", "Yellow"
        )

    Best Regards,
    Gao

    Community Support Team

     

    If there is any post helps, then please consider Accept it as the solution  to help the other members find it more quickly.
    If I misunderstand your needs or you still have problems on it, please feel free to let us know. Thanks a lot!

    How to get your questions answered quickly --  How to provide sample data in the Power BI Forum

6 Replies

  • Uzi2019's avatar
    Uzi2019
    Community Champion

    Hi Agent47 

     

    Unfortunetly No. There is very limited option available under fx of bar conditional formatting.

     

     

    As you can see you can just set to min to max color for gradient effect.  not based on row header values.

     

    But you can try below videos

    https://www.youtube.com/watch?v=DmLozWHekMA

     

    I hope I answered your question!

     

     

  • Hi Agent47 

    For databars, we are stuck at selecting one color for negative and another one for positive values. There is also no option to select another measure.

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi Agent47 ,

     

    Try using SVG + DAX:

    SVG_Total_Profit = 
    VAR MinValue = 
        MIN ( MINX ( ALLSELECTED ( 'financials'[Country],'financials'[Product] ), [Total Profit] ), 0 )
    VAR MaxValue = 
        MAX ( MAXX ( ALLSELECTED ( 'financials'[Country], 'financials'[Product] ), [Total Profit] ), 0 )
    VAR Gap_Value = MaxValue - MinValue
    VAR X = 720 * [Total Profit] / Gap_Value
    VAR TextValue = FORMAT([Total Profit], "#,##0.00")
    VAR RectColor = SWITCH(SELECTEDVALUE('financials'[Country]), "Canada", "Green", "France", "Red", "Germany", "Yellow")
    VAR StartX = 
        IF([Total Profit] >= 0, 0, 720 + X)
    VAR Height = 150
    VAR FontSize = 100 
    VAR TextXOffset = 10 
    VAR FontFamily = "Arial" 
    RETURN 
    "data&colon;image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='720' height='" & Height & "'>
    <rect x='" & StartX & "' y='0' width='" & ABS(X) & "' height='" & Height & "' fill='" & RectColor & "'/>
    <text x='" & StartX + TextXOffset & "' y='50%' font-size='" & FontSize & "' text-anchor='start' dominant-baseline='central' fill='black' font-family='" & FontFamily & "'>" & TextValue & "</text>
    </svg>"

    Remember to categorize it as an image URL.

    Best Regards,
    Gao

    Community Support Team

     

    If there is any post helps, then please consider Accept it as the solution  to help the other members find it more quickly.
    If I misunderstand your needs or you still have problems on it, please feel free to let us know. Thanks a lot!

    How to get your questions answered quickly --  How to provide sample data in the Power BI Forum

    • Agent47's avatar
      Agent47
      Helper I

      Hi Anonymous  , what if I need just like 3 different colours for Canada , France , Germany ? No min , max , nothing . Also will I write it as a measure ? And I could not find the measure tools option in my power bi Version: 2.137.751.0 64-bit (October, 2024)

      • danextian's avatar
        danextian
        Super User

        Measure tools is a contextual tab which appears when a measure is selected from the field pane. You will need to specify the min max/values to calculate the length of the bar. Unlike with the native databar option, this needs to be calculated when using SVG images. Also take note that exporting the data from the matrix will export the SVG markups and not the actual values.