While the addition of +/- to matrix row headers has made navigating matrices much easier, end users will often struggle with discoverability or navigating within the levels.
After watching a user Drill Down in a matrix and get lost when trying to return the matrix back to it’s original state, I started looking into how bookmarks can make for a cleaner user experience.
Luckily, this is not only easy to achieve, but there is an added benefit of being able to drill down on multiple visuals at the same time!
In this post, I will demonstrate how to navigate the levels of a matrix with buttons and bookmarks, as well as how to use this same concept to navigate the depth of multiple visuals at the same time while not impacting your filtering/slicers.
I will start by adding a button for each level that I want to drill down to, giving it a hover color change so it feels interactive. In this case, I have a Matrix with Year, Quarter, and Month as the Row Headers, so I will add a button for each.
I will then add a line shape under my buttons, one for each button, and hide my Quarter and Month underlines.
I will now create my Bookmark for the Year depth by selecting the Matrix, and all of my buttons and creating a bookmark that is for Selected Visuals.
It is very important to leave Data checked on, as this is what captures the depth of the matrix!
Now I will either Drill Down on my matrix, or Expand it depending on my desired user experience and capture another bookmark with the same settings.
Lastly, I will repeat for Month:
Now I will assign my buttons to their respective Bookmark Actions.
We can now control our depth with a single click, and navigate across levels skipping directly to the depth want to see.
This can be very useful when a report page has slicers or filters for the same dimensions we have for our depth, as the bookmark will not impact the slicers/filters on the page
You can take it even further by using this method to drill down multiple visuals at the same time
To do this, simply repeat the above steps, but with both visuals selected. We can now remain consistent across the page when we drill down, instead of drilling both visuals independently:
There are multiple benefits of implementing this kind of navigation for your end users:
It is easier to discover the ability to drill down
Users can skip directly to the level they want to view, limiting queries
Less Clicks to move across levels
If users drill down via right click > drill down, they can get lost and not realized where they need to go to drill back up. This gives an easy path back via button click
Drilling multiple visuals at the same time while retaining your slicer/filter selection provides visual depth consistency and better usability
If you would like to Download the PBIX for this example, Click Here
One of the best ways to create a quality and immersive user experience in Power BI is to build in interactive navigation.
I originally started building navigation into my reports when the tabs were on the bottom of the report in order to make the experience more intuitive. Now that we have left side tab navigation option in the New Look or within the newer App navigation layout, the need for this kind of thing has diminished, as it becomes repetitive.
That being said, there is still the need to create a navigation experience if you are looking for a more cohesive/immersive experience, and full control over the experience of your end users. For example, if I want to modify filtering when a user navigate pages rather than simply switching pages. We can do this via bookmarking, but not through traditional tabbing.
In this post, I will give step by step instruction on how to implement a navigation pane, and tips on how to design this experience
If you have read my other posts, this will be familiar. I will start this process by building a background in PowerPoint. In this example, I am building out a thin Bar on the left side with a hamburger icon on the top left. I also have a an accent of red next to the grey bar, which will come into play when we get into Power BI .
In Power BI, I will import my background (if you want to learn more about backgrounds, check out this post)
I will then add a shape that will act as my Panel in Power BI and match the color/size with the red element I included in the background
This will give the effect of the pane sliding out from the left side.
I will then build my navigation buttons on top of the red rectangle I created, giving the “current page” a different format to make it look selected
I will then enrich the filter pane by adding a label, and some shapes to make it feel more app like.
In addition, I will add a full canvas size Rectangle and has no fill and 100% Transparency for the line and ensure this shape is at the bottom of my group. This will allow me to give the users the ability to click anywhere outside of the panel to close the panel.
Now that my Pane is built, I will select all of my new elements and Right click > Group them
Next I will create my bookmarks for opening/closing the pane.
Next, I will create a button to place on top of my Hamburger icon. To create a subtle hover effect, I create a button with a default state color that matches my grey bar, and has 50% transparency, allowing the icon to show through. On Hover, the button is set to 100% transparency.
I will set the Action of the button to my “Open Pane” Bookmark and give it a tooltip that makes it easier for the end users.
Next, I will assign my Close Pane bookmark to my “x” button, AND my big transparent Rectangle. This is important for landing a good user experience by making it easy to close the panel by clicking anywhere outside of it.
If you have worked with layered shapes and visuals a lot, you will notice that if a user clicks an object, it comes to the front. In the case of this pane, it would be on top of the buttons, and render the pane useless
To work around this, I will create a button that as no options turned on
I will then assign the bookmark to my Red pane. This makes it so that the pane can be clicked by the end user without the object coming to the front and covering the buttons.
Finish it off by adding additional buttons to the side bar
In order to land that app-like user experience, add additional buttons for things like Guide or Information Overlays or direction to additional resources. Gives these buttons the same hover action as your Hamburger Icon to make for a consistent experience
Before Publishing, hide all of your page tabs except for the initial landing page. This is important because we do not want users to have two options on how to navigate.
When standard page navigation is not good enough to meet your need, building a pop out Navigation is a great alternative. Landing it correctly for a good user experience can get complicated quickly if the right attention to detail is not applied.
Try it out and see what other user experiences you can create with these methods!
This concept came about while I was working on a Power BI report for the 2018 Ryder Cup. I was attempting to build out an experience to match a design that a professional web/app designer had created free form without knowing what could be done in Power BI.
The key objective was to make an extremely User friendly touch screen experience for use by the Captain and Vice Captains of the US team.
It was an extremely tedious process to achieve this back then and I would have never suggested others to try it… until Visual Grouping was released a couple months back changed the game.
In this post, I will give examples of in-page navigation, step by step instructions on how to implement it in Power BI, and demonstrate why it is valuable.
What is it?
In-Page navigation utilizes buttons and bookmarks to create navigation within a page. It can be extremely powerful at giving users a guided experience, and an app or website feel to a report.
End users are often overwhelmed by the volume of visuals on a page and lose sight of what is important on the page. I like to follow the concept of “If the end user does not need to see the visuals at the same time, do not show them at the same time”. Keeping the layout simple will lead to less risk of misinterpretation. In addition, separating content into logical buckets and using these methods effectively prioritizes the queries, as hidden visuals do not run queries until they are exposed by the end user.
There are many ways we utilize these concepts to bring reports to life. I am going to focus on the idea of having an overarching topic for a page, and navigating the sub-topics within the page.
Like my previous posts on Backgrounds and Overlays , I am utilizing a data set of King County Health Inspection records.
Step 1. Bucket Your Content
In this example, I have an overarching Page topic of “Inspection Results”. I have some KPIs and a line graph that i want to keep exposed at all times, as they are the “Go-To” visuals for my report. I also have a couple slicers I want to keep exposed at all times.
I have looked through my data and determined some logical breaking points for the story: Zip Code, Inspection Type, and Closed Businesses.
I have also created a background to meet my needs and brought it into the report with a section for my in-page navigation and buttons. Each button will have two versions, one is to appear “selected” and the other to appear as “unselected”
Step 2. Build Your Views
I will now build out my visuals for the “Zip Code” sub-topic. Once the visuals have been determined, I will group them (ctrl+click to select all, right click > Group to group them):
Next, I will rename my group to “Zip Code” and use the selection pane to hide the group. This will give me a blank canvas to build my next section into. I will also shift which buttons are visible to the next section.
This is what my selection pane looks like at this point:
Now I will build out my Inspection Type sub-topic visuals, group them, and hide them as we did for Zip Code.
Finally, I repeat the same steps and build my Closed Business visuals.
I now have a completed Report that is ready to be assigned Actions with Bookmarks. Here is what my selection pane looks like at this point:
Step 3. Bring it to Life with Bookmarks
First, I manually return the report to the state of my first button by hiding/unhiding visuals and buttons. I then select the items I want to be impacted by the Bookmark and create a new Bookmark.
I will set my options to Selected Visuals, and leave the other options turned on. Note that this may vary depending on your use case! If you have slicers within your visual groups, you may or may not want to have data turned on, as the bookmark will preserve the state of those slicers if data is selected.
By using Selected Visuals bookmarks and not including the slicers that are outside of my groups, I am able to toggle between my groups while not impacting the slicers and preserving the user’s filtering.
I will now manually hide/unhide items to my next group and repeat the process.
And one more time:
I can now click through my bookmarks in the bookmarks pane to ensure they are acting as anticipated
Once I have validated they are acting correctly, I will now assign them to my buttons.
Step 4. Assign your Bookmarks to Buttons
Select Button then Change “Action” type to “Bookmark”, and find the appropriate Bookmark. I also suggest changing the Tooltip to make the hover over experience intuitive
I can now click my buttons and see the affect. Utilizing the performance analyzer, we can see how the queries are coming in. On the left below is the performance analyzer from the initial page load. On the right below, we have selected a button and can see there are only 5 visuals being impacted.
Oftentimes I will see reports that have every topic/subtopic forced into a single page and visible or spanning multiple pages. This is done via either increasing page length, or or separating topics into different pages.
The End user experience on a long scrolling page can be rough – they may come in to see my high level KPIs, or a specific sub-topic, but are forced to wait for the entire page to load as queries are not prioritized – Things they don’t care about are loading first and slowing down the things they do care about.
If a sub-topic is moved to it’s own page, I often see that users will force more visuals into the page to fill the space and it can result in poor performance for unnecessary visuals
By consolidating these sub-topics into a single page and navigating within we unlock a powerful user experience as well as performance improvements.
For the Ryder Cup example, we went from 7 seconds on a click, to .5 seconds due to avoiding re-rendering unnecessary items, and spreading out the queries to fire off as needed.
Accessibility – Tabbing
Buttons for In-Page Navigation work very well with Tabbing. Now that I have completed my In-Page Navigation, I can utilize the Tab order in Power BI Desktop to set the report up for accessibility. End users can tab to buttons and hit Enter to activate the bookmark.
Remember earlier when i mentioned the painful process of doing this prior to Visual Grouping? That really came into play when it was time to edit/update what was included in this navigation.
Prior to Visual grouping, the update process would be to simply start over. Now that we have visual groups are are technically hiding/unhiding the group, not the individual items, we can simply swap out what is included in a group.
If I want to replace my Map in the “Closed Business” with a matrix, I can simply Delete the map, build my new Matrix, and drag it into the group. No updates are needed beyond this, not even an “Update” on the bookmark!
The same applies to simply bringing new items into a group without replacing anything.
By Implementing Buttons and Bookmarking, the possibilities for report navigation and user experience are nearly endless. With a little creativity and these tools in the tool belt it is relatively easy to create beautiful and robust reports that feel like applications or websites. Your users will thank you!
Try it out and let me know what other ideas you have implemented using these concepts!
If interested in learning more about the Ryder Cup Project, check out these links:
Around 18 months ago I was working on a Power BI Report build that was going to have a few hundred monthly users, many of them accessing the report daily. We had just formed a new team doing BI for Finance and one of the mantras for the team was “No Training Required”.
Having been knee deep in Power BI for a couple years at this point, I knew it would be a challenge to build feature rich report that meets the needs of multiple levels of user and make it intuitive enough to avoid having to train end users. Many of the powerful features of Power BI are not very discoverable for end users natively, and since each report has a different set of features, past experience as an end user may not be valid.
Fortunately, Buttons has just come out and I had been playing with bookmarks to see what i could do with them. Combining the concept of No Training Required with Buttons/Bookmarks led to the idea of building a guided user experience native to Power BI.
In this post, I will show how to build a guide overlay for true self service reporting and how to implement it into Power BI using Buttons and Bookmarks.
Land Your Views
It is important that your views and features are finalized before taking these steps to avoid re-work. I always finish everything I can in a report before I get to the stage of overlaying.
If you read my post on Backgrounds in Power BI, some of this will look familiar. Like I mentioned in that post, I like to work on these kinds of things in PowerPoint, but many pro tools for design will work as well or better
First, I take a screenshot my finalized Report page and paste it into PowerPoint.
Now I will build shapes on top of my report view that will help guide my end users to features. I will often start by overlaying a rectangle that has a fill with 70-80% transparency, then bring in solid shapes with text.
I will now remove the Report Page screenshot to be left with my overlay and save it as a picture.
In Power BI, I will create a “?” Button and insert my Image.
Ensuring that my image is on the top of my selection pane and selected, I will create a Selected Visual Bookmark. I usually turn off data as a habit for overlays, although it will not affect anything here. (blog post on this coming soon)
I will then hide the image, and create a second selected visual bookmark
Now I will assign the Bookmark Action to my “?” Button and give it a good Tooltip
I will then activate my button to show the guide, and then assign our second bookmark to the guide image. This will allow the user to click anywhere after opening the guide to close it and get back to working with the report itself.
Overlays Beyond Guides
Using the concept of overlaying information and utilizing bookmarks lets us tap into a new dimension in Power BI. There are many uses for this beyond simple guides. Not only can we bring in static images with this approach, but also dynamic fields from our dataset. Here are some of the ways I have utilized this concept:
Lastly, Enjoy the free time you have created by giving users a guided experience that needs no training!
A solid layout is the foundation of every high quality report design. In this post I will show how to implement backgrounds into Power BI and provide resources to get started.
When thinking about Data Visualization, the primary focus is almost always on which types of visuals work best with the data in hand to tell a story. Even if a report has perfect Data and Visuals, it is the responsibility of the report author to land a cohesive story that is easy for the end user to navigate.
Margins, Distribution, Consistency, and Alignment are extremely important and often overlooked. If done poorly, these elements can take attention away from the story and leave users dissatisfied and confused. Fortunately, all four of these items can be tackled quickly and easily with a well made background.
A well made Background will:
Give structure and flow to a story
Guide and Guardrail the creative process of finding the story
Mask imperfection at the report level
There are many ways to build a Background for Power BI. I personally use PowerPoint for its simplicity, but more advanced graphic designers will use pro tools like Adobe Illustrator. At the end of the day, all we need to get to is a properly sized high quality image.
Avoid using shapes in Power BI to build your background
Every shape you bring into the Power BI Report directly will impact your performance, regardless if there is a query associated with it. If you bring in a single image for the background instead, you will be rendering a single element, rather than 10+ for a rich background. See the Performance Analyzer for Detail on this.
In the case where I do not have a story yet, I will start out in Power BI and identify an “Anchor Visual” to build my experience around. This would be the primary draw of your report page.
In this example I am looking at King County Health Inspection data and landed on a map to be my Anchor Visual. At this point, I will go into PowerPoint and start building my Background with this Anchor in Mind. I will then work with the shapes to determine a good layout for the remainder of the report.
If your Report page is 16:9 (Default) You can create in the Default Power Point slide size
Start with a shape that fits your Anchor visual and its position
I will then add color that goes with my branding/theme
I will now bring this background into my PBIX:
In Power Point, Select All of your Elements
Right Click > Save as Picture
In Power BI Desktop, with no elements selected, open the formatting options in the Visualization pane
Click + Add image button under “Page Background” and find your new image
Remove any transparency on the slider
Use drop down to Choose Image Fit: Fit
I can now position the visual in the box i created for it, and start building my story based on the other boxes I laid out for it.
If you find a key element that you want to include does not into your predetermined sections, simply modify the PPT to suit and re-load!
I can also bring in our Branding and Titles to limit how many elements are rendered within Power BI
Viewing the same visuals within the report without the background you will notice that not everything is positioned well, and the report is much harder to follow.
We now have a finished report page and can take our background and adjust our shapes to fit the needs of our remaining report pages. By keeping the same background colors/themes and redistributing our shapes we can end up with a consistent look and feel across tabs
Let me know what you think Follow on Twitter for quick tips and tricks @ChrisHamill17
Check out the Background Gallery to download the PowerPoint for this example, and check back for new Backgrounds frequently!