Anónimo
Con la última versión de Desktop, obtuvimos algunas posibilidades de codificación de colores con DAX.
https://docs.microsoft.com/en-us/power-bi/desktop-conditional-table-formatting#color-formatting-by-f…
Estoy tratando de implementarlo en mi escenario.
Estoy usando la medida «Valor de la medida» que devuelve diferentes valores de KPI que dependen de la selección de una segmentación.
Si selecciono VALOR COMPARTIDO en una segmentación, la medida devolverá el valor compartido en formato de porcentaje.
Pero si selecciono VALUE SALES IYA, la medida devolverá el valor del índice de ventas en comparación con el año anterior en formato de número.
Measure Value = var MySelection = SELECTEDVALUE('Measures 1'[MEASURE ID]) return SWITCH( TRUE(); MySelection = 1;FORMAT([VALUE SHARE];"0.0%"); MySelection = 2;FORMAT([VALUE SHARE DYA];"0.0%"); MySelection = 3;FORMAT([VALUE SALES IYA];"0"); MySelection = 4;FORMAT([VOLUME SALES IYA];"0"); MySelection = 5;FORMAT([$/SU IYA];"0"); BLANK() )
Estoy usando la tabla Matrix para visualizarlo.
Ahora voy a colorear los campos según los valores de «Valor de la medida».
Para ello he creado otra medida:
Measure Value Color = SWITCH(TRUE(); [Measure Value] <=1;"#000000"; [Measure Value] <99,5;"#e60000"; [Measure Value] <100,5;"#000000"; [Measure Value] <999999;"#2d862d"; "#000000" )
No importa qué KPI seleccione en la segmentación, el «Color del valor de la medida» tiene sentido para todos.
Luego trato de aplicar formato condicional para «Valor de la medida» de esta manera:
No puedo seleccionar Color de valor de medida.
Parece que está bloqueado. Puede verlo en la pantalla anterior, pero no puede seleccionarlo. 😞
¿Estoy haciendo algo mal?
El ejemplo que Microsoft demostró en la película parece funcionar, pero no el mío.
CConsultores1
Quiero algo como esto en gráfico de barras en power bi. Necesito mostrar los datos del año pasado en el gráfico y si este año es mayor que el año pasado, el color de la barra sería verde y si es menor, la barra sería roja. ¿Es factible y si no lo es, entonces hay alguna otra forma de mostrar los datos de esa manera? Gracias
molegris
Hola,
Esto me pasa todo el tiempo. Y siempre es porque se me olvidó cambiar el tipo de medida que devuelve los códigos de colores. El valor predeterminado es «número» incluso cuando su fórmula devuelve un texto. Tienes que forzarlo a «texto». Entonces ya no estará deshabilitado/en gris en la lista de selección de campo.
–mes
anonimo_98
Hola @anónimo y @Seward12533,
Estaba enfrentando el mismo problema y pude solucionarlo.
como lo solucione
Cambié el tipo de datos a TEXTO de la medida que cambia el color.
A continuación se muestra la medida que usé para cambiar el color. por defecto el tipo de dato de esta medida era decimal. por lo que no estaba funcionando.
Supongo que la lógica detrás de esto es que estamos devolviendo un código HEX que está en formato de TEXTO. entonces, si el tipo de datos es decimal, no funcionará, pero si es TEXTO, funcionará.
Triangle Color =
SWITCH(
TRUE(),
[Amt] > 1000, "#00d600",
[Amt] < 1000, "#d60000"
)
Seward12533
Su Calor de Medida es TEXTO Tiene que ser numérico. Intente envolver el valor de la medida dentro de su INTERRUPTOR de su medida de color con un VALOR() para concertar un número.
Anónimo
En respuesta a Seward12533
Gracias Seward
Si envuelvo SWITCH () en Value() así:
Measure Value = var MySelection = SELECTEDVALUE('Measures 1'[MEASURE ID]) return VALUE( SWITCH( TRUE(); MySelection = 1;FORMAT([VALUE SHARE];"0.0%"); MySelection = 2;FORMAT([VALUE SHARE DYA];"0.0%"); MySelection = 3;FORMAT([VALUE SALES IYA];"0"); MySelection = 4;FORMAT([VOLUME SALES IYA];"0"); MySelection = 5;FORMAT([$/SU IYA];"0"); BLANK() ) )
Estoy recibiendo un error:
Seward12533
En respuesta a Anónimo
No como este
Color del valor de medida = INTERRUPTOR (VERDADERO ();
VALOR([Measure Value]) <=1;"#000000";
Anónimo
En respuesta a Seward12533
Measure Value Color = SWITCH(TRUE(); VALUE([Measure Value]) <=1;"#000000"; VALUE([Measure Value]) <99,5;"#e60000"; VALUE([Measure Value]) <100,5;"#000000"; VALUE([Measure Value]) <999999;"#2d862d" )
Gracias Seward, pero eso no cambia nada. Sigue siendo el mismo error
Seward12533
En respuesta a Anónimo
¿Se puede compartir un PBIX? ¿Supongo que cambió su función de valor de medida de nuevo a donde estaba?
Anónimo
En respuesta a Seward12533
Finalmente logré esto de esta manera:
1) Creó dos medidas como se muestra a continuación.
Valor de medida: me da un formato de número que quiero
Measure Value = var MySelection = SELECTEDVALUE('Measures 1'[MEASURE ID]) return SWITCH( TRUE(); MySelection = 1;FORMAT([VALUE SHARE];"0.0%"); MySelection = 2;FORMAT([VALUE SHARE DYA];"0.0%"); MySelection = 3;FORMAT([VALUE SALES IYA];"0"); MySelection = 4;FORMAT([VOLUME SALES IYA];"0"); MySelection = 5;FORMAT([$/SU IYA];"0"); BLANK() )
Valor de medida 2: este se utiliza para la codificación de colores
Measure Value2 = var MySelection = SELECTEDVALUE('Measures 1'[MEASURE ID]) return SWITCH( TRUE(); MySelection = 1;[VALUE SHARE]; MySelection = 2;[VALUE SHARE DYA]; MySelection = 3;[VALUE SALES IYA]; MySelection = 4;[VOLUME SALES IYA]; MySelection = 5;[$/SU IYA]; BLANK() )
2. Aplicar reglas de codificación de colores
Nota. Uso Measue Value en el campo «Valores» en mi visualización. Luego use el formato condicional «colores de fondo»
formateado por reglas, basado en el campo Valor de medida2
Así que finalmente terminé con el formato de número y color.