Storytelling with Power BI 4/7: Have an interactive experience

Fourth topic in the storytelling blog series is about an interactive experience. Interactive experience can be implemented in many ways. In this blog I will highlight why interactivity is important in reporting and where you can think of, talking about interactivity.


You want the user to interact with the report. It’s not only a static image, but the user should be able to interact with it. Especially because you want to answer the next question of your end-user, as I explained in the previous blog about having a guided experience.

Many times, I see reports with loads of visuals on the pages. This results in both a really poor performance, as well as the end user has no clue what the key message is of this report. You can always ask yourself, is this visual necessary to show on this page? What does it add to this page? Is this really needed? If not, remove it! If the visual does add some value, is it needed on this page? Maybe it is only distracting the user of where the report is about.

A good approach can be to put certain visuals on a different page or hide them by default until the user interacts with the report. Within the interaction, you will have multiple options in Power BI to interact with your user. Below I listed a few;

  • Drillthrough, drill down on a specific item on the report. The user will be redirected to another page while keeping the context of the selected item.
  • Report page tooltips, show more context and visuals by hovering a visual.
  • Use of buttons to show and/or hide items on your canvas. Don’t show them by default, but after clicking you can show some additional items, or highlight items.

In this blog, I will show you more about the usage of buttons to hide and see items. For this case I will use a demo which can be downloaded from PowerBI.Tips website.


Pop-up filter panel

Filter can take up a lot of space on your report canvas. Especially when you’re building your own navigation as well. So, you should ask yourself, do I really need to see all these filters on my canvas all the time? If not, why not put them in a filter panel? Let’s take a look on how to create one.

For this purpose, we’re going to use both, the Selection and the bookmarks pane. You can enable both of them in the top ribbon in the view section. Follow the below steps to create a pop-up filter panel.
Important while building this solution is to give every object, you’re adding to your canvas an explanatory name. This will come in handy when we start creating the bookmarks.

  1. First design your report with the visuals you want.
  2. Add a button to your canvas which we will use later on to trigger the filter pane.
  3. Add a square as overlay to your report. This square will be the background of your filter panel.
  4. Add all the filters you want on top of the square. If you want to, add a title as well.
  5. Add a button on the right top corner of the square. This button will be used to close the filter panel again.
  6. Create the first bookmark, called Open filter panel.
  7. Change the properties of the before created bookmark by disabling the data property. Read more about bookmarks and the properties to set here.
  8. Open the selection pane, under layer order, you will see all the objects which are on your canvas. Each object has a little eye on the end. Now, hide all the objects related to the filter panel by clicking on the little eye.
  9. Create another bookmark, rename this one to Close filter panel.
  10. Repeat step 7 as well for this bookmark.
  11. Assign the bookmarks to the buttons. The Open filter panel to the button on your report canvas and the Close filter panel to the button on top of the filter panel.


What is still missing?

if you’re looking at the report with the filter panel collapsed, the end user has no clue what the current filter context is. So, the user doesn’t know if there are any filters applied or not. It is important to show the current filter context to the end-user in order to interpret the data correctly. By enabling the modern visual header, Power BI provides you with a feature to set the context.

You can enable this feature by taking the below steps:

  1. Go to file
  2. Options & settings
  3. Options
  4. Under current file, you will find Report settings
  5. In the Visual options section, enable Use the modern visual header with updated styling options. 

This feature will allow the end user to hover over the right top corner of every visual in order to see the applied filters. However, this information is not presented on the report at first sight.


Another option could be to create a separate visual where you show the current filter context. You can do this by creating a measure for each filter that can be applied in the filter panel. For this purpose, you can use the DAX expression SELECTEDVALUE. Find more about this expression in the documentation. Reid Havens wrote a great blog on about capturing Power BI slicer selections. Worth reading it!




5 thoughts on “Storytelling with Power BI 4/7: Have an interactive experience

  1. Pingback: The Importance of Interaction in Power BI – Curated SQL

  2. Pingback: Storytelling with Power BI 5/7: Ensure consistent context – Data – Marc

  3. Hans

    Thanks for the tips!

    One addition: this works great with a report consisting of 1 page.
    If you have more pages, then the close filter panel will send you back to the first page instead of the page the person was one.


    1. You’re totally right Hans. The way I described it will work fine for one page, but you need to rebuild it for every page. However, also take a look at my next blog about ensuring a consistent context. This describes how you can sync filters over pages. Working with that, you may decide to have the filters on only one page.


  4. Pingback: Webinar recap & blog series: Storytelling & interactive reporting with Power BI – Data – Marc

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s