Don't miss your chance to take the Fabric Data Engineer (DP-700) exam on us!
Learn moreWe've captured the moments from FabCon & SQLCon that everyone is talking about, and we are bringing them to the community, live and on-demand. Starts on April 14th. Register now
hi,
Is it possible to create a matrix like this? Clean with multiple expansions?
Solved! Go to Solution.
Hi @soderqvistn ,
Thanks for rohit1991 and danextian reply.
You can try the following steps and here is sample data
| First Level | Second Level | Category | Values | Third Level |
| First | Second | A | VALUES | Third |
| First | Second | A | VALUES | Third1 |
| First | Second | B | VALUES | Third |
| First | Second | B | VALUES | Third1 |
| First | Second | C | Third | |
| First | Second | C | Third1 | |
| First | Second | D | Third | |
| First | Second | D | Third1 | |
| First | Second | E | Third | |
| First | Second | E | Third1 | |
| First | Second | F | 55 | Third |
| First | Second | F | 88 | Third1 |
| First | Second | G | Third | |
| First | Second | G | Third1 | |
| First | Second | G | Third |
Create a matrix
Create a mesure
Icons =
IF(
SELECTEDVALUE('Table'[Category]) = "G",
"data:image/svg+xml;utf8, <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'> <circle cx='50' cy='50' r='40' stroke='Green' stroke-width='4' fill='green' /> </svg>"
)
Change the mesure data category to Image URL
Apply the measure to icon
Final output
Best regards,
Albert He
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly
Hi @soderqvistn ,
Thanks for rohit1991 and danextian reply.
You can try the following steps and here is sample data
| First Level | Second Level | Category | Values | Third Level |
| First | Second | A | VALUES | Third |
| First | Second | A | VALUES | Third1 |
| First | Second | B | VALUES | Third |
| First | Second | B | VALUES | Third1 |
| First | Second | C | Third | |
| First | Second | C | Third1 | |
| First | Second | D | Third | |
| First | Second | D | Third1 | |
| First | Second | E | Third | |
| First | Second | E | Third1 | |
| First | Second | F | 55 | Third |
| First | Second | F | 88 | Third1 |
| First | Second | G | Third | |
| First | Second | G | Third1 | |
| First | Second | G | Third |
Create a matrix
Create a mesure
Icons =
IF(
SELECTEDVALUE('Table'[Category]) = "G",
"data:image/svg+xml;utf8, <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'> <circle cx='50' cy='50' r='40' stroke='Green' stroke-width='4' fill='green' /> </svg>"
)
Change the mesure data category to Image URL
Apply the measure to icon
Final output
Best regards,
Albert He
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly
Hi,
Use a Matrix Visual: Add hierarchical fields for rows (e.g., First → Second). Values will populate as columns.
Add Conditional Formatting: Use Icons (like green circles) for indicators under your values column. Go to Format > Conditional Formatting > Icons.
Set Expand/Collapse: The Matrix visual supports expandable and collapsible rows by default.
Result: Clean, hierarchical, expandable matrix with visual indicators.
Assuming the second and third are row fields, they will have to be in in their own hierarchy and will be in another row.
If you have recently started exploring Fabric, we'd love to hear how it's going. Your feedback can help with product improvements.
A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.
Share feedback directly with Fabric product managers, participate in targeted research studies and influence the Fabric roadmap.
| User | Count |
|---|---|
| 53 | |
| 37 | |
| 35 | |
| 19 | |
| 17 |
| User | Count |
|---|---|
| 74 | |
| 70 | |
| 39 | |
| 35 | |
| 23 |