Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Pratz203
Helper I
Helper I

Necesita ayuda para crear un gráfico de columnas apiladas con fórmulas DAX

Hola Expertos,
Espero que lo estén haciendo bien.
Tengo los siguientes datos en forma de 5 columnas y el perfil de riesgo se agregará como una columna calculada en función del estado, la actividad y las columnas de retraso de la fecha de inicio según los criterios siguientes.
Si el estado es Verde, el perfil de riesgo es "No"
Si el estado es ámbar o rojo, el perfil de riesgo es "Alto"
Si la actividad es Anticipada, el perfil de riesgo es "Anticipado"
Si se anticipa la actividad y la fecha de inicio retrasada es True, el perfil de riesgo es "Delayed"

ID de proyectoPresupuestoEstadoActividadfecha de inicio retrasadaPerfil de riesgo
1100VerdeVivirFalsoNo
2200RojoVivirFalsoAlto
3300ÁmbarVivirFalsoAlto
4400VerdeVivirFalsoNo
5500RojoVivirFalsoAlto
6600ÁmbarVivirFalsoAlto
7700n/aAnticipadoFalsoAnticipado
8800n/aAnticipadoFalsoAnticipado
9900n/aAnticipadoVerdadRetrasado
101000n/aAnticipadoVerdadRetrasado

Pregunta:
¿Podría ayudarme a formar la columna calculada?
A continuación, me gustaría crear un gráfico de columnas apiladas como se muestra a continuación. El valor es el presupuesto y la leyenda sería el perfil de riesgo.

demonstration.png

gracias de antemano.

3 REPLIES 3
v-kelly-msft
Community Support
Community Support

Hola @Pratz203 ,

Usted puede tratar debajo de la expresión dax que creo que es mucho más simple:

Column = 
SWITCH('Table'[Activity],
"Live",IF('Table'[Status]="Green","No",IF('Table'[Status]="Amber"||'Table'[Status]="Red","High")),
"Anticipated",IF('Table'[start date delayed]="True","Delayed","Anticipated"))

Y verás:

Annotation 2020-05-22 152946.png

Para el archivo .pbix relacionado, haga clic aquí.


Saludos
Kelly
¿Respondí a tu pregunta? ¡Marca mi puesto como solución!

Tendré que admitir @v-kelly-msft ver una serie de ifs anidados dentro de una instrucción SWITCH descrita como más simple es una primera. ¿Realmente crees que esto es más fácil de leer y editar que una instrucción SWITCH directa con una serie de elementos?

Column =
SWITCH(
    'Table'[Activity],
    "Live", IF(
        'Table'[Status] = "Green",
        "No",
        IF(
            'Table'[Status] = "Amber"
                || 'Table'[Status] = "Red",
            "High"
        )
    ),
    "Anticipated", IF(
        'Table'[start date delayed] = "True",
        "Delayed",
        "Anticipated"
    )
)



Did I answer your question? Mark my post as a solution!
Did my answers help arrive at a solution? Give it a kudos by clicking the Thumbs Up!

DAX is for Analysis. Power Query is for Data Modeling


Proud to be a Super User!

MCSA: BI Reporting
edhans
Super User
Super User

Hola @Pratz203

Le recomiendo que cree la columna en Power Query, no como una columna calculada en DAX. Vínculos a continuación sobre por qué se deben evitar las columnas calculadas. La fórmula completa de Power Query al agregar una columna personalizada es:

=if [Status] = "Green" then "No"
else if [Status] = "Amber" or [Status] = "Red" then "High"
else if [Activity] = "Anticipated" and [start date delayed] = false then "Anticipated"
else if [Activity] = "Anticipated" and [start date delayed] = true then "Delayed"
else null

Dicho esto, hice una columna calculada también:

Risk Profile 2 = 
SWITCH(
    TRUE(),
    'Table'[Status] = "Green", "No",
    'Table'[Status] = "Red", "High",
    'Table'[Status] = "Amber", "High",
    'Table'[Activity] = "Anticipated" && [start date delayed] = FALSE(), "Anticipated",
    'Table'[Activity] = "Anticipated" && [start date delayed] = True(), "Delayed",
    BLANK()
)

Puede ver mi archivo PBIX para ver cómo se creó este gráfico.
2020-05-21 08_10_10-20200521 - Stacked Column Chart - Power BI Desktop.png

En general, intente evitar las columnas calculadas. Hay veces para usarlos, pero es raro. Normalmente se prefiere obtener datos del sistema de origen, crear columnas en Power Query o medidas DAX a las columnas calculadas. Vea estas referencias:
Columnas calculadas vs medidas en DAX
Columnas y medidas calculadas en DAX
Diferencias de almacenamiento entre columnas calculadas y tablas calculadas
Creación de una tabla de fechas dinámicas en Power Query



Did I answer your question? Mark my post as a solution!
Did my answers help arrive at a solution? Give it a kudos by clicking the Thumbs Up!

DAX is for Analysis. Power Query is for Data Modeling


Proud to be a Super User!

MCSA: BI Reporting

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.