Knowledge Leader

How to Create Interactive Narratives with Power BI and the Microsoft Stack

Charles Moran
by Charles Moran
Director of Business Intelligence

Using Power BI to help consumers better understand the narrative

As data becomes more common place in all aspects of business there is an increasing need to utilize reports and dashboards, regardless of your role. As developers, a good portion of time developing self-service analytics is often spent on the back-end. In turn, the output is generally a pieced together report which includes a variety of visuals.  Analysts consume this data and subsequently push it out in PowerPoint after PowerPoint in an attempt to tell a unique narrative. Based on whoever the business stakeholder is, the PowerPoint changes. As good BI developers, we should look at ways to automate these narratives and create reports that not only present the right data but also help the user easily understand the story. In this post I’ll share how to create interactive narratives using Power BI and the Microsoft Stack with the end-user in mind.

Narrative story telling through data

One of the lacking aspects of modern BI technology is how to tell a compelling story with the data you’ve gathered.  As more self-service data platforms evolve, business users are becoming better at manipulating data and pivoting results to paint whatever story they want around a critical business need. This can lead to mixed results, as people tend to bias toward past experiences and view data through their own lens.

Let’s take a look at some of the common place examples of data-driven story telling being used today.

Four major groups for data-driven narratives. Power BI
Four major groups for data-driven narratives

Most data-driven narratives can be categorized into four major groups that vary by presentation style and size of story:


These type of stories are created through a single view. They generally tell a story about one particular subject through quantitative charts and pictograms.


Newsletters are a continuation of an ongoing story over a regular interval of time.  They are meant to update users on current events and let them know what’s coming up.

Static reports

Generally, this type of report is found among more scientific groups. These groups focus on one particular subject but also mix qualitative analysis with quantitative supporting metrics.


These are the PowerPoints we all know and love.  They share a particular subject or a group of subjects through story telling slides, like pages in a book.

Each of these groups tells a narrative in their own unique way, but all have one common theme: they are static and require manual updates.  Let’s take a look at how we can use Power BI and the Microsoft Stack to automate these ideas while still allowing for some manual intervention with qualitative analysis.

Telling a compelling story of smart city transit data

iSoftStone’s Smart city initiatives rely heavily on data analysis to understand underlying trends around how cities operate.  Smart city projects range greatly, and can include anything from using sensor data to monitor water consumption, to improving congestion by better understanding traffic data. One of iSoftStone’s new solutions is a Transportation Analysis Platform (TAP). This platform uses transit traffic times from a variety of sources to better understand both corridor health and impact; before, during and after major road construction.  The largest and most common of these data sets are the Bing and Google Transit Time API’s. These provide directions on a variety of platforms including mobile and web.

For the purposes of our article let’s take a look at some real world data from both these platforms. We’ll examine several corridors in the Portland area and see how transit times in traffic compare.

Data collection process

In our hypothetical scenario we are tasked by the city of Portland to take some baseline measurements of three different corridors (in both directions). In addition, we must compare the results for both Bing and Google.  The city is planning to make some major upcoming changes and wants to understand current traffic times in order to look for areas of improvement. They also may want to rerun the report in the future to look for measurable impacts to their changes.  They would like us to do some high level analysis of our findings and present the material in an easy to digest manner.

Building the interactive narrative

Since our data is somewhat static after the collection process, we first choose to take the infographic layout approach. This allows us to narrate our findings and (by using Power BI) automate the report to continue data collection.

Google and Bing transit analysis report I-5 south bound (view the report)

First, our report begins with a title and brief summary.  This helps prevent first time report users from being overwhelmed with a scattering of data.  Second, our report contains our main slicer. The slicer allows our report to be interactive, and offers a more conversational tone to the user. I like to think of this section as the “choose your own adventure” portion of the report.  By filtering at the top level we are able to change the entire underlying narrative and tell unique stories that may be vastly different.  We can even change and filter qualitative analysis using this method.

When we scroll down the report we have our main section that directly answers the “choose your own adventure” question we asked at the top.  The entire report allows users to ask and answer questions as they dive further into the story.  Continuing down the page, we’re able to ask sub questions about specific areas of interest. In this case, we ask: “How do traffic times change throughout the day”. In addition, we ask “How do traffic times change through the week”.  You’ll notice that below each question we have both a quantitative and qualitative section that changes as we look through different routes.  Due to the simplicity of data, we’re using Excel to pipe in the qualitative analysis and mapping it according to the route selection.  We’ve created measures to do this using the following DAX:

AnalysisMeasure = if(HASONEVALUE(TableName[TextColumn]), VALUES(TableName[TextColumn]), “”)

Google and Bing transit analysis report I-5 north bound (view the report)

Now, let’s say we decide to filter and report a different route. Here’s the results for examining I-5 north bound as opposed to I-5 south bound.

Notice that all three qualitative analyses, along with the quantitative charts and figures change.  Not only does this facilitate self-service analytics, but it also drives the ability for analysts and researchers to help guide the conclusions and continue the narrative theme.

Finally, we’ve selected a simple design approach for the narrative. It includes several Gestalt principles including alignment, closure, and continuity.  We’ve also included a lot of white space. This limits how much data we can show but focuses the user on a single subject.

By allowing for interactivity we can tell several different stories on the same sheet without the need for multiple slides or reports. This creates one centralized location where the user can access studies on a particular subject.

A simple path to create a cohesive narrative among stakeholders

The transit analysis example is fairly basic, however we’ve used this concept for several iSoftStone clients with much success.  The idea of building interactive narratives creates a better bridge between analysts, researchers and the business.  In most cases, the qualitative analysis is built into either Excel or SharePoint, then consumed and modeled accordingly.  In more complex platforms we tend to use Master Data Management which allows researchers to incorporate their thoughts. As the platform evolves, adoption tends to rise as more researchers want to share their insights with the business.

Obvious scalability issues arise as the “choose your own adventure” becomes more complex. So, trying to simplify your data-driven story will help in the long run.  There are some powerful ways to further automate qualitative analysis to get around these scalability issues. If interested, check out Narrative Science’s custom visual for Power BI.  You’ll find a full automated analysis of the data using the Narrative Science plugin on the second page of the report. This type of plain language BI, along with Microsoft’s push to further Q&A style reporting will undoubtedly begin to change our perspective on automating data analysis in a very cool way.

Hopefully this helps provide a better idea of how to think outside the box with reporting in Power BI and the Microsoft Stack.