Forum Discussion
fahadkhan
1 year agoFrequent Visitor
Matrix visual Hierarchy and conditional color based on overall color
Hi everyone, I have a simple usecase for matrix visual i want to display. I have a table with Project, Project group, Team lead, task and status color in one table. so based on the heir...
- 1 year ago
Hey fahadkhan
TEst this one, bit lengthy tho:coloring = var currentProject = SELECTEDVALUE('Table'[Project]) var currentStatus = SELECTEDVALUE('Table'[Task Status]) var isTaskLevel = HASONEVALUE('Table'[Task]) var delayedRedOnes = COUNTX( VALUES('Table'[Project Group]), CALCULATE( COUNTX( VALUES('Table'[Project]), CALCULATE( COUNTROWS('Table'), 'Table'[Task Status] = "Delayed", REMOVEFILTERS('Table'[Task]) ) ), REMOVEFILTERS('Table'[Project]) ) ) var inProgressOnes = COUNTX( VALUES('Table'[Project Group]), CALCULATE( COUNTX( VALUES('Table'[Project]), CALCULATE( COUNTROWS('Table'), 'Table'[Task Status] = "In Progress", REMOVEFILTERS('Table'[Task]) ) ), REMOVEFILTERS('Table'[Project]) ) ) var completeGreenOnes = COUNTX( VALUES('Table'[Project Group]), CALCULATE( COUNTX( VALUES('Table'[Project]), CALCULATE( COUNTROWS('Table'), 'Table'[Task Status] = "Complete", REMOVEFILTERS('Table'[Task]) ) ), REMOVEFILTERS('Table'[Project]) ) ) var taskLevelCheck = SWITCH( TRUE(), isTaskLevel && currentStatus = "Delayed", "red", isTaskLevel && currentStatus = "In Progress", "yellow", isTaskLevel && currentStatus = "Complete", "green" ) var idk = SWITCH( TRUE(), completeGreenOnes > 0 && ISBLANK(delayedRedOnes) && ISBLANK(inProgressOnes), "green", delayedRedOnes > 0 ,"red", isTaskLevel, taskLevelCheck, "yellow" ) return idk
vojtechsima
Super User
1 year agoHey fahadkhan
TEst this one, bit lengthy tho:
coloring =
var currentProject = SELECTEDVALUE('Table'[Project])
var currentStatus = SELECTEDVALUE('Table'[Task Status])
var isTaskLevel = HASONEVALUE('Table'[Task])
var delayedRedOnes =
COUNTX(
VALUES('Table'[Project Group]),
CALCULATE(
COUNTX(
VALUES('Table'[Project]),
CALCULATE(
COUNTROWS('Table'),
'Table'[Task Status] = "Delayed",
REMOVEFILTERS('Table'[Task])
)
),
REMOVEFILTERS('Table'[Project])
)
)
var inProgressOnes =
COUNTX(
VALUES('Table'[Project Group]),
CALCULATE(
COUNTX(
VALUES('Table'[Project]),
CALCULATE(
COUNTROWS('Table'),
'Table'[Task Status] = "In Progress",
REMOVEFILTERS('Table'[Task])
)
),
REMOVEFILTERS('Table'[Project])
)
)
var completeGreenOnes =
COUNTX(
VALUES('Table'[Project Group]),
CALCULATE(
COUNTX(
VALUES('Table'[Project]),
CALCULATE(
COUNTROWS('Table'),
'Table'[Task Status] = "Complete",
REMOVEFILTERS('Table'[Task])
)
),
REMOVEFILTERS('Table'[Project])
)
)
var taskLevelCheck =
SWITCH(
TRUE(),
isTaskLevel && currentStatus = "Delayed", "red",
isTaskLevel && currentStatus = "In Progress", "yellow",
isTaskLevel && currentStatus = "Complete", "green"
)
var idk = SWITCH( TRUE(),
completeGreenOnes > 0 && ISBLANK(delayedRedOnes) && ISBLANK(inProgressOnes), "green",
delayedRedOnes > 0 ,"red",
isTaskLevel, taskLevelCheck,
"yellow"
)
return idk