Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
6 years ago
Solved

Pin selection from slicer

Hello Community,

 

I'm trying to create a line chart to show the results of an indicator by country and by year. Additionally I would like to have the region value all the time so I can compare specific results.

 

What I had in mind was to add a DAX expression in the filters. I came up with this measure:

 

default country =
IF(
CALCULATE(ISFILTERED(FactCountryIndicator[Country]),ALLSELECTED(FactCountryIndicator[Country]),SELECTEDVALUE(FactCountryIndicator[Latin America & the Caribbean])
))))
 
But it is not working.
 
Any help would be appreciated
 
PS
I share the file
  • Anonymous's avatar
    Anonymous
    6 years ago

    HI Anonymous,

    AFAIK, power bi does not support setting the default value of filter/slicers. (Dax formulas also not support direct interaction with the filter/slicer section)

    For this scenario, you can use unrelated table 'country' field on the slicer and create measure formula with conditions to set a default value and compare with current value to return tag. (you can use it on visual level filter use the result tag to confirm displayed records)

    Calculate table:

    Country Selector= ALL( Table[Country] )

    Measure:

    Measure filter on Slicer =
    VAR currValue =
        SELECTEDVALUE ( Table[Country] )
    VAR default = "Latin America and the Caribbean"
    RETURN
        IF ( currValue <> default , "Y", "N" )
    

    After these steps, you can write a measure as filter on your line chart to check current value and selected value from slicer.

    Measure filter on Chart =
    VAR currValue =
        SELECTEDVALUE ( Table[Country] )
    VAR default = "Latin America and the Caribbean"
    VAR selected =
        ALLSELECTED ( 'Country Selector'[Country] )
    RETURN
        IF ( currValue IN selected || currValue = default, "Y", "N" )
    

    Regards,

    Xiaoxin Sheng

3 Replies

  • az38's avatar
    az38
    Community Champion

    Anonymous 

    try to create column, not measure

    but i can not to understand what result do you expect

    • Anonymous's avatar
      Anonymous
      Not applicable

      I would like to end up with this

       

      Hence you can select more countries and compare them with the region.

       

      In my model what I have is a column of indicators  with four of them and information about five countries plus Latin America and the Caribbean.

       

      PS I don't want that Latin America shows in the slicer, just in the chart 

       

      • Anonymous's avatar
        Anonymous
        Not applicable

        HI Anonymous,

        AFAIK, power bi does not support setting the default value of filter/slicers. (Dax formulas also not support direct interaction with the filter/slicer section)

        For this scenario, you can use unrelated table 'country' field on the slicer and create measure formula with conditions to set a default value and compare with current value to return tag. (you can use it on visual level filter use the result tag to confirm displayed records)

        Calculate table:

        Country Selector= ALL( Table[Country] )

        Measure:

        Measure filter on Slicer =
        VAR currValue =
            SELECTEDVALUE ( Table[Country] )
        VAR default = "Latin America and the Caribbean"
        RETURN
            IF ( currValue <> default , "Y", "N" )
        

        After these steps, you can write a measure as filter on your line chart to check current value and selected value from slicer.

        Measure filter on Chart =
        VAR currValue =
            SELECTEDVALUE ( Table[Country] )
        VAR default = "Latin America and the Caribbean"
        VAR selected =
            ALLSELECTED ( 'Country Selector'[Country] )
        RETURN
            IF ( currValue IN selected || currValue = default, "Y", "N" )
        

        Regards,

        Xiaoxin Sheng