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! It's time to submit your entry. Live now!
Hola
Necesito ser capaz de crear una matriz como esta que traza un valor dentro de una matriz basada en su puntuación.
¿Podría alguien ofrecer algún consejo sobre si esto sería posible y cómo se puede hacer?
Muchas gracias
Solved! Go to Solution.
Hola
Según su descripción, creo que no puedo alcanzar completamente su requisito, pero tengo una solución.
Puede crear una tabla llamada 'Mapa de calor' como esta introduciendo datos:
Copie esta tabla llamada 'Mapa de calor (2)' en el Editor de consultas y desdinámica, muestra:
A continuación, elija Table Hearmap visual from App Source para mostrar la tabla 'Heat Map', que muestra:
Consulte su tabla publicada, creo estas medidas para mostrar el eje X y el eje Y de cada riesgo en el contenido visual del mapa de calor superior:
risk 1-check =
var a = CALCULATE(MAX('Table'[Residual Score]),FILTER('Table','Table'[Risk Title]="Risk 1"))-MAX('Hear Map (2)'[Value])
return
IF(a>=0,a,100)
risk 2-check =
var a = CALCULATE(MAX('Table'[Residual Score]),FILTER('Table','Table'[Risk Title]="Risk 2"))-MAX('Hear Map (2)'[Value])
return
IF(a>=0,a,100)
risk 3-check =
var a = CALCULATE(MAX('Table'[Residual Score]),FILTER('Table','Table'[Risk Title]="Risk 3"))-MAX('Hear Map (2)'[Value])
return
IF(a>=0,a,100)
risk 4-check =
var a = CALCULATE(MAX('Table'[Residual Score]),FILTER('Table','Table'[Risk Title]="Risk 4"))-MAX('Hear Map (2)'[Value])
return
IF(a>=0,a,100)
risk 1 = IF([risk 1-check]=MINX(ALLSELECTED('Hear Map (2)'),[risk 1-check]),1,0)
risk 2 = IF([risk 2-check]=MINX(ALLSELECTED('Hear Map (2)'),[risk 2-check]),1,0)
risk 3 = IF([risk 3-check]=MINX(ALLSELECTED('Hear Map (2)'),[risk 3-check]),1,0)
risk 4 = IF([risk 4-check]=MINX(ALLSELECTED('Hear Map (2)'),[risk 4-check]),1,0)A continuación, pruebe estas dos medidas:
_Category =
SWITCH (
TRUE,
MAX ( 'Table'[Risk Title] ) = "Risk 1", CALCULATE (
MAX ( 'Hear Map (2)'[Category] ),
FILTER ( 'Hear Map (2)', [risk 1] = 1 )
),
MAX ( 'Table'[Risk Title] ) = "Risk 2", CALCULATE (
MAX ( 'Hear Map (2)'[Category] ),
FILTER ( 'Hear Map (2)', [risk 2] = 1 )
),
MAX ( 'Table'[Risk Title] ) = "Risk 3", CALCULATE (
MAX ( 'Hear Map (2)'[Category] ),
FILTER ( 'Hear Map (2)', [risk 3] = 1 )
),
MAX ( 'Table'[Risk Title] ) = "Risk 4", CALCULATE (
MAX ( 'Hear Map (2)'[Category] ),
FILTER ( 'Hear Map (2)', [risk 4] = 1 )
)
)
_Attribute =
SWITCH (
TRUE,
MAX ( 'Table'[Risk Title] ) = "Risk 1", CALCULATE (
MAX ( 'Hear Map (2)'[Attribute] ),
FILTER ( 'Hear Map (2)', [risk 1] = 1 )
),
MAX ( 'Table'[Risk Title] ) = "Risk 2", CALCULATE (
MAX ( 'Hear Map (2)'[Attribute] ),
FILTER ( 'Hear Map (2)', [risk 2] = 1 )
),
MAX ( 'Table'[Risk Title] ) = "Risk 3", CALCULATE (
MAX ( 'Hear Map (2)'[Attribute] ),
FILTER ( 'Hear Map (2)', [risk 3] = 1 )
),
MAX ( 'Table'[Risk Title] ) = "Risk 4", CALCULATE (
MAX ( 'Hear Map (2)'[Attribute] ),
FILTER ( 'Hear Map (2)', [risk 4] = 1 )
)
)El resultado muestra:
Aquí está mi archivo pbix de prueba:
Espero que esto ayude.
Saludos
Giotto Zhi
Hola
Según su descripción, creo que no puedo alcanzar completamente su requisito, pero tengo una solución.
Puede crear una tabla llamada 'Mapa de calor' como esta introduciendo datos:
Copie esta tabla llamada 'Mapa de calor (2)' en el Editor de consultas y desdinámica, muestra:
A continuación, elija Table Hearmap visual from App Source para mostrar la tabla 'Heat Map', que muestra:
Consulte su tabla publicada, creo estas medidas para mostrar el eje X y el eje Y de cada riesgo en el contenido visual del mapa de calor superior:
risk 1-check =
var a = CALCULATE(MAX('Table'[Residual Score]),FILTER('Table','Table'[Risk Title]="Risk 1"))-MAX('Hear Map (2)'[Value])
return
IF(a>=0,a,100)
risk 2-check =
var a = CALCULATE(MAX('Table'[Residual Score]),FILTER('Table','Table'[Risk Title]="Risk 2"))-MAX('Hear Map (2)'[Value])
return
IF(a>=0,a,100)
risk 3-check =
var a = CALCULATE(MAX('Table'[Residual Score]),FILTER('Table','Table'[Risk Title]="Risk 3"))-MAX('Hear Map (2)'[Value])
return
IF(a>=0,a,100)
risk 4-check =
var a = CALCULATE(MAX('Table'[Residual Score]),FILTER('Table','Table'[Risk Title]="Risk 4"))-MAX('Hear Map (2)'[Value])
return
IF(a>=0,a,100)
risk 1 = IF([risk 1-check]=MINX(ALLSELECTED('Hear Map (2)'),[risk 1-check]),1,0)
risk 2 = IF([risk 2-check]=MINX(ALLSELECTED('Hear Map (2)'),[risk 2-check]),1,0)
risk 3 = IF([risk 3-check]=MINX(ALLSELECTED('Hear Map (2)'),[risk 3-check]),1,0)
risk 4 = IF([risk 4-check]=MINX(ALLSELECTED('Hear Map (2)'),[risk 4-check]),1,0)A continuación, pruebe estas dos medidas:
_Category =
SWITCH (
TRUE,
MAX ( 'Table'[Risk Title] ) = "Risk 1", CALCULATE (
MAX ( 'Hear Map (2)'[Category] ),
FILTER ( 'Hear Map (2)', [risk 1] = 1 )
),
MAX ( 'Table'[Risk Title] ) = "Risk 2", CALCULATE (
MAX ( 'Hear Map (2)'[Category] ),
FILTER ( 'Hear Map (2)', [risk 2] = 1 )
),
MAX ( 'Table'[Risk Title] ) = "Risk 3", CALCULATE (
MAX ( 'Hear Map (2)'[Category] ),
FILTER ( 'Hear Map (2)', [risk 3] = 1 )
),
MAX ( 'Table'[Risk Title] ) = "Risk 4", CALCULATE (
MAX ( 'Hear Map (2)'[Category] ),
FILTER ( 'Hear Map (2)', [risk 4] = 1 )
)
)
_Attribute =
SWITCH (
TRUE,
MAX ( 'Table'[Risk Title] ) = "Risk 1", CALCULATE (
MAX ( 'Hear Map (2)'[Attribute] ),
FILTER ( 'Hear Map (2)', [risk 1] = 1 )
),
MAX ( 'Table'[Risk Title] ) = "Risk 2", CALCULATE (
MAX ( 'Hear Map (2)'[Attribute] ),
FILTER ( 'Hear Map (2)', [risk 2] = 1 )
),
MAX ( 'Table'[Risk Title] ) = "Risk 3", CALCULATE (
MAX ( 'Hear Map (2)'[Attribute] ),
FILTER ( 'Hear Map (2)', [risk 3] = 1 )
),
MAX ( 'Table'[Risk Title] ) = "Risk 4", CALCULATE (
MAX ( 'Hear Map (2)'[Attribute] ),
FILTER ( 'Hear Map (2)', [risk 4] = 1 )
)
)El resultado muestra:
Aquí está mi archivo pbix de prueba:
Espero que esto ayude.
Saludos
Giotto Zhi
Gracias por responder
En estos datos de muestra, el Riesgo 2 se trazaría en el cuadrante superior derecho (como alto riesgo) y los riesgos 3 y 4 estarían en el cuadrante inferior izquierdo
Hola @KG1
Si usted está buscando desarrollar un objeto visual personalizado usted mismo, puede publicar sus preguntas aquí.
https://community.powerbi.com/t5/Developer/bd-p/Developer
Opcionalmente, ha comprobado si aún no hay objetos visuales personalizados disponibles.
The Power BI Data Visualization World Championships is back! It's time to submit your entry.
Check out the January 2026 Power BI update to learn about new features.