Forum Discussion

danextian's avatar
danextian
Super User
9 years ago

Dynamic Category Using a Slicer

Most of the time, I post on the community to ask for help but this time I am giving back.

I've read several posts that dynamic category based on slicer selection is not possible. While it may not be an out of the box feature, it is possible with some tweaking. I've also read similar solutions but I find mine simpler and easier to follow :). The trick makes use of the following:

  • adding an index column
  • referencing a query
  • unpivoting columns 
  • relationship

In my sample pbix (click to download from my GDrive), I connected  to the Ofeed data from powerbi.tips (click for the link to the webpage)

http://services.odata.org/AdventureWorksV3/AdventureWorks.svc

 and used CompanySales table. 

 

Here are the steps,

  1. After successfully connecting to CompanySales table, add an index column to it and just name it "Index". (We'll be using index number as unique identifier in a relationship.)
  2. Change Index data type to whole number. 
  3. Create another query referencing CompanySales table and name it "Category".
  4.  Remove all columns except ProductCategory, ProductSubCategory, OrderYear, OrderQtr and Index.
  5. Right-click Index column and Unpivot Other Columns.
  6. Rename these newly created columns: Attribute to Category, and  Value to Subcategory.
  7. Change data type of Category and Subcategory columns to text.
  8. Load the query.
  9. Create a relationship betwen CompanySales[Index] and Category[Index] (i set mine to both direction)
  10. Add Category column to a slicer visual (turn on Single Selection and off  Select All) 

You may view my sample report here:

 

https://app.powerbi.com/view?r=eyJrIjoiMjJmODEyNWYtNDk5OC00NjU1LTkzMjQtYzQ4YTQzNjA2MjgwIiwidCI6IjZjNTNiN2YxLWNlNjAtNDI1Mi05YmI2LTJkYmEzMWM0NjVjMSIsImMiOjEwfQ%3D%3D

 

Please don't forget to kudos this post if you find this helpful.

11 Replies

  • tmaz1234's avatar
    tmaz1234
    Regular Visitor

    Hi,

     

    What did you use to create the 4 interactive tiles on top of your dashboard. Thanks

     

     

    • TomMartens's avatar
      TomMartens
      Super User

      Hey tmaz1234,

       

      the interactive tiles are "just" a slicer with a horizontal layout. Go to the General Format options of the slicer and switch the orientation to horizontally.

       

      Cheers

  • i preapred a KPI dashbaord and use below KPI tile,i need to cummualtive monthly value in quarter via slicer to show respective data in KPI tile.

     

    • kPIIndicator.2.0.1

     

    Can anybody help me out in this regards,

     

    WAQAR...

    +92 333 3035810

     

     

  • Can you share pbix file for the same...

    Thanks

    • waqar's avatar
      waqar
      Helper I

      my problem is solved, what problem you are facing.

       

      REGARDS...

      WAQAR

  • Can you send pbix file for the same..

    Thanks...

    • danextian's avatar
      danextian
      Super User

      Hi punit

       

      The link to pbix is in my original post. It's publicly downloadable from my Google Drive.

  • I managed to reproduce this today - great tool and an elegant solution, thanks!

     

    I wonder: did you ever try to combine two identical and interdependent of these into one page? I failed, cause they block each other.

     

    thx,

    M

  • I did this with my fact table of 500k records but it causes chart to load extremely slow any tips to fixing this issue
  • Amedved's avatar
    Amedved
    Frequent Visitor

    I found this concept very helpful! I will add that: if you have many categories that identify each row, keep as many of them as possible in your "Category" table. Thanks danextian !