Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more
Mark this measure as ImageURL and put it in table or matrix
Waffle =
VAR t =
GENERATESERIES ( 1, 10 )
VAR tPlus =
GENERATE ( SELECTCOLUMNS ( t, "Value1", [Value] ), t )
VAR tPlusPlus =
ADDCOLUMNS ( tPlus, "Index", RANKX ( tPlus, [Value] + [Value1] / 100,, ASC ) )
VAR tWaffle =
ADDCOLUMNS (
tPlusPlus,
"circle",
"<circle cx='" & [Value] * 10 + 15 & "' cy='" & [Value1] * 10 + 15 & "' r='4' fill='"
& IF ( [Index] <= ROUND ( [percent] * 100, 0 ), "Black", "LightGrey" ) & "' />"
)
VAR Chart =
"data:image/svg+xml;utf8," & "
<svg xmlns='http://www.w3.org/2000/svg' width='150' height='150'>" & "
<g transform='rotate(-90,75,75)'>"
& CONCATENATEX ( tWaffle, [circle] ) & "
</g>
<text x='70' y='20' font-size='15' text-anchor='middle' >"
& ROUND ( [percent] * 100, 0 ) & "</text>
<text x='70' y='148' font-size='15' text-anchor='middle' >"
& SELECTEDVALUE ( 'table'[store] ) & "</text>
</svg> "
RETURN
IF ( HASONEVALUE ( 'table'[store] ), Chart, BLANK () )
This was exactly what I needed - thank you!!!!
The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now!
Check out the November 2025 Power BI update to learn about new features.
| User | Count |
|---|---|
| 7 | |
| 5 | |
| 4 | |
| 2 | |
| 2 |