A waffle chart can often be used instead of a two-category pie chart. However, its use mainly aims to support the understanding of some progress or fulfill some percentage goal. Therefore, it is a best always practice to show you the value reached to avoid creating problems in understanding the user when reading this visual.
Because you can use a 10x10 square grid, where one cube = 1% if we use a different model, it is good to let the user know if we used, for example, 5x5 and one cube would mean 4%; then again, it can be confusing for the user because counting by 4% is unnatural for most people. At such a moment, it would be better to use a rectangular shape with a ratio of 5x4 or 4x5, so that one cube = 5%. Then we would have at least 50% filling in the middle of the chart.
At the same time, I give one more recommendation. It is possible to fill individual squares partially. This can also help with understanding the gradual progress, but it can be counterproductive due to the need to read the graph as more layered. So be very careful if you try something like this. I recommend using the maximum division of the square by quarters.
DAX Template
The description labels within the template should guide you to the individual variables and elements that you can/should modify. Of course, this is a template, so feel free to customize it to your heart’s content, and it just provides a base. Everything else depends on your needs and ideas.
Power BI Core Visuals supporting this template
Like most other SVGs that we want to dynamically generate, we can use them within three native visuals.
- Matrix
- New Card
- Table
The template is again aimed more at use within the new CARD visual, but with a bit of MACGyver work, it could also be used well in the other options mentioned. However, the maintenance would then be significantly higher.
Set up of new Card visual
- Visual
- Values: Off
- Layout
- Vertical alignment: Middle
- Cards
- Padding: Custom -> 0px (top, left, right) 0px (bottom)
- Image: On
- Image type: Image URL
- Image Url: fx
- Transparency: 0%
- Position: Bottom
- Padding: 0px
- Size: Auto
- General
- Size
- Width: 380px
- Height: 330px
- Padding: 15px (all)
- Size