/20230729-powerbi-macguyver-toolbox

Power BI report .pbip templates and patterns to create special visuals, address specific problems, and have adventures..

MIT LicenseMIT

powerbi-macguyver-toolbox

Power BI report .pbip templates and patterns to create special visuals, address specific problems, and have data adventures.

⚠️ Notice

These templates are provided as-is without warranties or guarantees. They are not maintained nor are they all necessarily suitable for use in production solutions. Feel free to use them, but do so at your own risk.

💡 To use these templates

You must first enable Power BI Project files from Power BI Desktop to open and use these templates. Note that the .pbip format is in Preview.

  1. Open Power BI Desktop (~May 2023 version or later)
  2. Open the 'File' menu
  3. Navigate to Options and settings and then Options
  4. Enable the preview feature _Power BI Project (.pbip) save option
  5. Restart Power BI Desktop
  6. Clone the Repo to your local machine using VS Code or a similar SCM tool
  7. Open the .pbip files in Power BI Desktop
  • I will make a tutorial about how to do this in a video in the coming week.

An image depicting how to enable .pbip format in Power BI Desktop

I use the .pbip format for the following reasons:

  • Lightweight sharing of report + model metadata.
  • Report metadata allows you to programmatically modify the templates before opening them.
  • Track changes of the individual objects and formatting in the GitHub repo.

Bar chart templates

The following bar chart templates are available:

Note: Any chart with a MacGuyver Rating of 3 or above (🟩🟩🟩⬜⬜+) is not recommended for production deployment. That's because they require too many report-specific objects and have too high a risk to break or effort to maintain. For these charts, you should use Deneb.

Image (Click for Template) Name Description
Bar chart (Horizontal bar) The standard horizontal bar chart. Tried and true, best used to compare categories. Consider turning off axes and gridlines and using data labels with conditional formatting for a more elegant design.

Subjective Goblin graph scores
🟩🟩🟩🟩🟩 Popularity Rating - How frequently I see it requested by users for reports
🟩🟩🟩🟩⬜ Utility Rating - The breadth of different use-cases that it covers
⬜⬜⬜⬜⬜ MacGuyver Rating - Effort to make it and # report-specific objects required
Column chart (Vertical bar) The standard vertical bar chart. Harder to read compared to the horizontal version, often because the labels are truncated or angled. Consider using the Bar chart (Horizontal bar), instead.

Subjective Goblin graph scores
🟩🟩🟩🟩🟩 Popularity Rating
🟩🟩⬜⬜⬜ Utility Rating
⬜⬜⬜⬜⬜ MacGuyver Rating
Rounded bar chart A standard horizontal bar chart, except the ends are rounded. Honestly, I personally don't see the appeal, but there's a lot of people who do. There's a risk that the curves make it harder to compare lengths. It's mainly used for infographics for the shape.

Subjective Goblin graph scores
🟩🟩🟩⬜⬜ Popularity Rating
⬜⬜⬜⬜⬜ Utility Rating
🟩🟩🟩⬜⬜ MacGuyver Rating
Stacked bar chart The standard horizontal stacked bar chart. Can be useful because it can display both the part-of-whole and total labels, but like many part-of-whole visuals, can be difficult to read and interpret with too many categories.

Subjective Goblin graph scores
🟩🟩🟩🟩⬜ Popularity Rating
🟩🟩🟩⬜⬜ Utility Rating
⬜⬜⬜⬜⬜ MacGuyver Rating
Stacked bar chart II A horizontal stacked bar chart showing the percent of the total for each row (category along the Y-axis). Can be useful because it can display both the part-of-whole and total labels, but like many part-of-whole visuals, can be difficult to read and interpret with too many categories.

This is a useful chart type to analyze survey and sentiment analysis, for example.

Subjective Goblin graph scores
🟩🟩🟩🟩⬜ Popularity Rating
🟩🟩🟩⬜⬜ Utility Rating
⬜⬜⬜⬜⬜ MacGuyver Rating
Divergent bar chart A horizontal bar chart that plots the difference between two values being compared instead of showing the absolute values. This chart type is useful when you want to focus on high magnitudes of difference, or when the difference matters more than the absolute values.

Subjective Goblin graph scores
🟩🟩🟩🟩⬜ Popularity Rating
🟩🟩🟩🟩⬜ Utility Rating
⬜⬜⬜⬜⬜ MacGuyver Rating
Lollipop chart An alternative to the standard horizontal bar chart that has a dingle shape on the end, making it look like a lollipop. Honestly, I personally don't see the appeal, but it's especially popular if you have the data labels appear in the circle. The main use-case is if the shape of the chart needs to resemble something like a thermometer or something else.

Subjective Goblin graph scores
🟩🟩🟩⬜⬜ Popularity Rating
⬜⬜⬜⬜⬜ Utility Rating
🟩🟩🟩⬜⬜ MacGuyver Rating
Butterfly chart A type of bar chart where two series are plotted, but one is inversed. Useful for pairwise comparisons mainly of the magnitude and distribution for the values, for example when comparing two categories like sex or this year vs. last year.

Subjective Goblin graph scores
🟩🟩🟩⬜⬜ Popularity Rating
🟩🟩🟩⬜⬜ Utility Rating
🟩🟩⬜⬜⬜ MacGuyver Rating
Bar chart with line end A bar chart where the end has a longer line to make it easier to compare between the categories. Honestly, I wouldn't recommend doing this in Power BI because it's not worth the effort to MacGuyver and maintain it for the return you get.

Subjective Goblin graph scores
🟩⬜⬜⬜⬜ Popularity Rating
🟩🟩⬜⬜⬜ Utility Rating
🟩🟩🟩⬜⬜ MacGuyver Rating
Bullet chart Bullet charts are great. I love them. They are excellent chart types for comparing to a target, or between two series. In my opinion, they are the most efficient chart type for this, other than perhaps a horizontal dumbbell / connected dot plot, which sadly is not possible in Power BI right now.

Subjective Goblin graph scores
🟩🟩🟩🟩⬜ Popularity Rating
🟩🟩🟩🟩🟩 Utility Rating
🟩⬜⬜⬜⬜ MacGuyver Rating
Progress bar A horizontal bar chart that shows a percentage completion or achievement. Note that this specific template doesn't account for overachievement (values going over 100%), which is something you should consider in addition.

Subjective Goblin graph scores
🟩🟩⬜⬜⬜ Popularity Rating
🟩🟩🟩⬜⬜ Utility Rating
🟩⬜⬜⬜⬜ MacGuyver Rating
Progress bar II A version of the progress bar chart that breaks the progress into discrete chunks, like 10%, 20% or 25%. This can be good if those chunks have a functional meaning, like something happens at 75-100% that wouldn't happen at 50-75%.

Subjective Goblin graph scores
🟩🟩🟩⬜⬜ Popularity Rating
🟩🟩🟩⬜⬜ Utility Rating
🟩🟩⬜⬜⬜ MacGuyver Rating
Progress bar III A version of the progress bar chart that has the progress tracked as a triangle along a vertical axis. More subtle than the original and requires more MacGuyvering, as it's actually a scatterplot.

Subjective Goblin graph scores
🟩⬜⬜⬜⬜ Popularity Rating
🟩🟩⬜⬜⬜ Utility Rating
🟩🟩🟩🟩⬜ MacGuyver Rating
Progress thin bar A version of the progress bar chart that has the progress tracked as a dot along a vertical axis; more subtle and less ink than the original. Mainly for visual appeal.

Subjective Goblin graph scores
🟩🟩⬜⬜⬜ Popularity Rating
🟩🟩⬜⬜⬜ Utility Rating
🟩🟩⬜⬜⬜ MacGuyver Rating
Bar-in-bar Comparing two series where they are directly overlaid and one series has thinner bars than the other. This can be a nice alternative to the bullet chart and more efficient with the real estate than side-by-side bars.

Subjective Goblin graph scores
🟩🟩🟩⬜⬜ Popularity Rating
🟩🟩🟩🟩⬜ Utility Rating
🟩🟩⬜⬜⬜ MacGuyver Rating
Side-by-side bars Two adjacent series to compare the absolute values. In this version, the series are designed to look more like a Tableau side-by-side chart, which is sub-optimal because it's not as flexible as the core visual from Power BI.

Subjective Goblin graph scores
🟩🟩⬜⬜⬜ Popularity Rating
🟩🟩⬜⬜⬜ Utility Rating
🟩🟩🟩⬜⬜ MacGuyver Rating
Side-by-side bars II Side-by-side bars to compare two or more series. A nice, simple core visual to compare absolute values. Ensure that the minimum width is set that you can have the data labels showing.

Subjective Goblin graph scores
🟩🟩🟩🟩🟩 Popularity Rating
🟩🟩🟩⬜⬜ Utility Rating
⬜⬜⬜⬜⬜ MacGuyver Rating
Bar chart and candlestick Side-by-side bars where a candlestick shows the percentage difference. Honestly, this is a great chart type that's an alternative to connected dot plot or dumbbell charts, but in Power BI it's simply too much effort to MacGuyver with the core visuals. Just make a dumbbell / connected dot plot in Deneb or use a bullet chart; don't waste time with this.

Subjective Goblin graph scores
⬜⬜⬜⬜⬜ Popularity Rating
🟩🟩🟩🟩⬜ Utility Rating
🟩🟩🟩🟩🟩 MacGuyver Rating

Line chart templates

The following line chart templates are available:

Note: Any chart with a MacGuyver Rating of 3 or above (🟩🟩🟩⬜⬜+) is not recommended for production deployment. That's because they require too many report-specific objects and have too high a risk to break or effort to maintain. For these charts, you should use Deneb.

Image Name Description
Line chart The standard line chart of Power BI. Useful for plotting trends, but needs specific handling of the axes and labels to be most usable and efficient. *Beware that the Y-axis won't start at 0 by default in Power BI. Additionally, be aware that Power BI will interpolate values such that it will connect data points over blanks, which can create false trends.

Subjective Goblin graph scores
🟩🟩🟩🟩🟩 Popularity Rating - Frequency I see it requested
🟩🟩🟩⬜⬜ Utility Rating - # Different use-cases that it covers
⬜⬜⬜⬜⬜ MacGuyver Rating - Effort to make it with core visuals
Area chart The standard line chart, but with area fill beneath the line. The shaded area can help illustrate the magnitude of difference, and also improve trend readability when the chart is small.

Subjective Goblin graph scores
🟩🟩🟩⬜⬜ Popularity Rating
🟩🟩🟩⬜⬜ Utility Rating
⬜⬜⬜⬜⬜ MacGuyver Rating
Labels and markers The standard line or area chart with markers and labels. The markers should be subtle and small, and labels should be sufficiently configured to all be readable. Can sometimes provide too much context and reduce the time it takes users to read the graph.

Subjective Goblin graph scores
🟩🟩🟩🟩🟩 Popularity Rating
🟩🟩🟩⬜⬜ Utility Rating
⬜⬜⬜⬜⬜ MacGuyver Rating
Spline line chart The standard line chart but where the lines are smoothened instead of linear. While this can be aesthetically pleasing or interesting, it can create misleading trends, so be certain that you are not just using "smooth lines" for aesthetic reasons, alone.

Subjective Goblin graph scores
🟩🟩🟩🟩⬜ Popularity Rating
🟩🟩⬜⬜⬜ Utility Rating
⬜⬜⬜⬜⬜ MacGuyver Rating
Stepped line chart Shows the connections as steps instead of linear or smoothened connections. Stepped line charts help emphasize that the data is not continuous, which can be helpful.

Subjective Goblin graph scores
🟩⬜⬜⬜⬜ Popularity Rating
🟩🟩🟩⬜⬜ Utility Rating
⬜⬜⬜⬜⬜ MacGuyver Rating
Label latest data point The standard line or area chart where the latest data point is labelled. You can use this same approach to label other points-of-interest, like earliest, highest, lowest, or other points (like yesterday, last week, etc.) This helps provide additional context to the user.

Subjective Goblin graph scores
🟩🟩🟩🟩🟩 Popularity Rating
🟩🟩🟩🟩🟩 Utility Rating
🟩⬜⬜⬜⬜ MacGuyver Rating
Improved axis ranges The standard line or area chart where conditional formatting is used to control axis ranges to give more room for labels to render and to ensure that the axis starts at 0. This is generally recommended for most time series data, unless the emphasis is on the change (like stock market data).

Subjective Goblin graph scores
🟩🟩🟩🟩⬜ Popularity Rating
🟩🟩🟩🟩🟩 Utility Rating
🟩⬜⬜⬜⬜ MacGuyver Rating
Vertical area-of-interest Highlighting a specific area-of-interest on the X-axis. This can be a period or a category, depending on how the chart is set up. Requires some MacGuyvering, but is relatively stable, and useful for drawing attention.

Subjective Goblin graph scores
🟩🟩⬜⬜⬜ Popularity Rating
🟩🟩🟩🟩⬜ Utility Rating
🟩⬜⬜⬜⬜ MacGuyver Rating
Error bands Adding error bands to the line chart to visualize data variance about a measure of central tendency like an average. Also useful for visualizing uncertainty, like for forecasting. These concepts can be advanced for many users and require data literacy training and tutorials.

Subjective Goblin graph scores
🟩⬜⬜⬜⬜ Popularity Rating
🟩🟩⬜⬜⬜ Utility Rating (Situational)
⬜⬜⬜⬜⬜ MacGuyver Rating
Thresholds Showing a specific target or threshold and shading or marking the area above (or below) it. Useful when there is a static target or when you want to compare to a global average.

Subjective Goblin graph scores
🟩🟩🟩⬜⬜ Popularity Rating
🟩🟩🟩🟩⬜ Utility Rating
🟩🟩⬜⬜⬜ MacGuyver Rating
Horizontal area-of-interest Highlighting a vertical area of interest, like a threshold area instead of threshold line. Also useful when you want to highlight multiple areas, like temperature ranges for machines.

Subjective Goblin graph scores
🟩🟩🟩⬜⬜ Popularity Rating
🟩🟩🟩⬜⬜ Utility Rating
🟩⬜⬜⬜⬜ MacGuyver Rating
Multiple lines Comparing multiple series, with or without showing variation and uncertainty.

Subjective Goblin graph scores
🟩🟩🟩🟩🟩 Popularity Rating
🟩🟩🟩🟩⬜ Utility Rating
⬜⬜⬜⬜⬜ MacGuyver Rating
Hills and valleys Comparing multiple series and highlighting the difference between them by using conditional formatting. Requires some MacGuyvering, but is quite stable. Note that the area fill cannot interpolate the area between data points, unlike the lines in the line chart.

Subjective Goblin graph scores
🟩🟩⬜⬜⬜ Popularity Rating
🟩🟩🟩🟩⬜ Utility Rating
🟩🟩⬜⬜⬜ MacGuyver Rating
Multiple area Comparing multiple series where there are overlapping area fills between the lines. Can be useful circumstantially but can also pollute the canvas with additional ink that doesn't need to be there.

Subjective Goblin graph scores
🟩🟩🟩🟩⬜ Popularity Rating
🟩🟩🟩⬜⬜ Utility Rating
⬜⬜⬜⬜⬜ MacGuyver Rating
Stacked area Parts-of-whole for trend analysis. Useful when you want to break up a trend to see how different parts contribute to a total. Need to be careful that it isn't mis-interpreted by users.

Subjective Goblin graph scores
🟩🟩🟩⬜⬜ Popularity Rating
🟩🟩🟩⬜⬜ Utility Rating
⬜⬜⬜⬜⬜ MacGuyver Rating

Remark

I don't consider myself a "dataviz person"; these comments are my subjective opinions and experience. I'm just sharing these templates because they might be helpful to others.