Cómo ordenar de forma personalizada las columnas de un objeto visual tipo matriz en Power BI

Share on twitter
Share on linkedin
Share on whatsapp
Share on email

Observemos la siguiente tabla:

Ahora supongamos que queremos mostrar la información de las ventas de cada país agrupada por el campo “Group” con un objeto visual tipo matriz. El aspecto sería el siguiente:

Por defecto, Power BI ordena las columnas de tipo texto de forma alfabética, de modo que el orden predeterminado para las columnas del grupo “Group” es “Europe – North America – Pacific”. En este caso, para facilitar la información a los usuarios queremos mostrar las columnas del grupo “Group” con nuestro propio orden personalizado: “North America – Europe – Pacific”. ¿Cómo conseguirlo?

Un error frecuente…

Quizás, lo primero que se nos ocurre como solución es crear una nueva columna “SortByGroup” e indicar ahí el orden personalizado de los grupos:

Sin embargo, al aplicar el orden por otra columna, Power BI nos lanza un mensaje de error indicando:

Una forma de resolverlo:

Desde el Editor de Power Query, creamos una tabla personalizada en la que indicamos cuál será el orden de los grupos:

Y la relacionamos con la tabla que queremos ordenar:

Ahora debemos incluir la columna “Sort Order” de la tabla “Sort Group” en la tabla principal que alimenta el objeto visual matriz. Para ello, creamos una nueva columna “SortOrder_Rltd” que se base en la relación que acabamos de crear.

Volvemos a la página de visualizaciones y con el control matriz seleccionado, nos situaremos en la pestaña “Modelado” y en el apartado de campos (a la derecha) seleccionaremos el campo que necesitamos ordenar (“Group”). El botón “Ordenar por columna” se activará (por defecto se muestra desactivado) y al pulsarlo se muestra la lista de campos disponibles para ordenar el campo “Group”, donde seleccionaremos nuestro nuevo campo “SortByGroup_Rltd”.

Siguiendo estos pasos, ya tendríamos las columnas ordenadas.

Share on linkedin
LinkedIn
Share on whatsapp
WhatsApp
Share on twitter
Twitter
Share on email
Email
Share on print
Print