Eventos
Campeonato mundial de DataViz de Power BI
14 feb, 16 - 31 mar, 16
Con 4 posibilidades de entrar, podrías ganar un paquete de conferencia y convertirlo en el Live Grand Finale en Las Vegas
Saber másEste explorador ya no se admite.
Actualice a Microsoft Edge para aprovechar las características y actualizaciones de seguridad más recientes, y disponer de soporte técnico.
Nota
Los cálculos de objeto visual se encuentran actualmente en versión preliminar.
Un cálculo de objeto visual es un cálculo DAX definido y ejecutado directamente en un objeto visual. Los cálculos de objeto visual facilitan la creación de cálculos que antes eran difíciles de crear, lo que permite simplificar DAX, facilitar el mantenimiento y mejorar el rendimiento.
Este es un cálculo de objeto visual de ejemplo en el que se define una suma acumulada para Sales Amount. Observe que la fórmula DAX necesaria es sencilla:
Running sum = RUNNINGSUM([Sales Amount])
Un cálculo puede referirse a cualquier dato dentro del visual, incluidas columnas, métricas u otros cálculos visuales. Esta capacidad elimina la complejidad del modelo semántico y simplifica el proceso de escritura de DAX. Puede usar cálculos de objeto visual para completar cálculos empresariales comunes, como sumas o medias acumuladas.
Los cálculos de objeto visual difieren de las otras opciones de cálculos en DAX:
Los cálculos visuales no se almacenan en el modelo y, en su lugar, se almacenan en el objeto visual. Esto significa que los cálculos visuales solo pueden hacer referencia a lo que está en el objeto visual. Cualquier elemento del modelo se debe agregar al objeto visual antes de que el cálculo de objeto visual pueda hacerle referencia, lo que evita que los cálculos de objeto visual tengan en cuenta la complejidad del contexto de filtro y el modelo.
Los cálculos visuales combinan la simplicidad del contexto de las columnas calculadas con la flexibilidad de cálculo a petición de las medidas.
En comparación con las medidas, los cálculos de objeto visual funcionan en datos agregados en lugar del nivel de detalle, lo que suele dar lugar a ventajas de rendimiento. Cuando un cálculo se puede lograr mediante una nueva medida o un cálculo de objeto visual, este último suele dar lugar a un mejor rendimiento.
Dado que los cálculos visuales forman parte del objeto visual, pueden hacer referencia a la estructura visual, lo que conduce a una mayor flexibilidad.
Para obtener una comparación más detallada de las formas de agregar cálculos en Power BI, vea Uso de opciones de cálculos en Power BI Desktop.
Una vez que habilite los cálculos de objeto visual, puede hacer lo siguiente:
En las secciones siguientes se proporcionan detalles sobre cómo cada uno de los elementos, descritos en las viñetas anteriores, funcionan con cálculos visuales.
Antes de septiembre de 2024, para usar cálculos de objeto visual, debe habilitarlos en Opciones y configuración>Opciones>Características de versión preliminar. Seleccione Cálculos de objeto visual y después Aceptar. Los cálculos de objeto visual se habilitan después de reiniciar Power BI Desktop.
A partir de septiembre de 2024, este paso ya no es necesario, ya que los cálculos visuales están habilitados de forma predeterminada. Aunque todavía están en versión preliminar, puede usar la configuración anterior para deshabilitar los cálculos visuales si lo prefieren.
Para agregar un cálculo de objeto visual, seleccione un objeto visual y después el botón Nuevo cálculo visual de la cinta:
La ventana de cálculos de objeto visual se abre en modo Edición. La pantalla del modo Edición consta de tres secciones principales, como se muestra de arriba abajo en la siguiente imagen:
Para agregar un cálculo de objeto visual, escriba la expresión en la barra de fórmulas. Por ejemplo, en un objeto visual que contiene Importe de ventas y Costo total del producto por año fiscal, puede agregar un cálculo visual que calcule el beneficio de cada año escribiendo:
Profit = [Sales Amount] – [Total Product Cost]
De forma predeterminada, la mayoría de los cálculos de un objeto visual se evalúan fila por fila, como una columna calculada. En el ejemplo anterior, para cada fila de la matriz visual, se restan el Importe de ventas actual y el Costo total del producto , y el resultado se devuelve en la columna de Ganancia . Aunque sea posible, no es necesario agregar una función de agregación como SUM como se haría en una medida. De hecho, es mejor no agregar ese tipo de agregados cuando no sean necesarios, para que pueda distinguir más fácilmente entre medidas y expresiones de cálculo de objeto visual.
A medida que agregue cálculos de objeto visual, se muestran en la lista de campos del objeto visual:
Además, el cálculo de objeto visual se muestra en el objeto visual:
Puede usar muchas funciones DAX existentes en los cálculos de objeto visual. También hay funciones específicas de los cálculos de objeto visual. Como los cálculos de objeto visual funcionan dentro de los límites de la matriz visual, no se pueden usar funciones que se basan en relaciones de modelo como USERELATIONSHIP, RELATED o RELATEDTABLE.
En el modo de edición de los cálculos de objeto visual, puedes ocultar campos del objeto visual igual que puedes ocultar columnas y tablas en la vista de modelado. Por ejemplo, si solo quiere mostrar el cálculo de objeto visual Beneficio, puede ocultar Importe de ventas y Costo total de beneficios en la vista:
Al ocultar campos no se quitan del objeto visual ni de la matriz visual, por lo que los cálculos de objeto visual todavía pueden hacerles referencia y seguir funcionando. Un campo oculto todavía se muestra en la matriz visual, pero no se muestra en el objeto visual resultante. Se recomienda incluir solo campos ocultos si son necesarios para que los cálculos de objeto visual funcionen.
Los cálculos de objeto visual incluyen plantillas para facilitar la escritura de cálculos comunes. Puede encontrar plantillas si selecciona el botón de plantilla y elige una con la que trabajar:
También puede crear un cálculo visual con plantilla desde la cinta haciendo clic en la parte inferior del botón Nuevo cálculo visual.
Están disponibles las siguientes plantillas:
Al seleccionar una plantilla, se inserta en la barra de fórmulas. Puede usar estas plantillas como puntos de partida. También puede agregar expresiones propias sin depender de plantillas.
Muchas funciones tienen un parámetro Axis opcional, que solo se puede usar en cálculos de objeto visual. Axis influye en la forma en que el cálculo de objeto visual recorre la matriz visual. El parámetro Axis se establece en el primer eje del objeto visual de forma predeterminada. Para muchos objetos visuales, el primer eje es ROWS, lo que significa que el cálculo visual se evalúa fila por fila en la matriz visual, de arriba a abajo. En la siguiente tabla se muestran los valores del parámetro Axis y su efecto:
Icono Axis | Nombre Axis | Descripción |
---|---|---|
![]() |
ROWS | Calcula de forma vertical a través de las filas de arriba hacia abajo. |
![]() |
COLUMNS | Calcula horizontalmente a través de las columnas desde la izquierda hacia la derecha. |
![]() |
ROWS COLUMNS | Calcula verticalmente entre filas de arriba a abajo, continuando columna por columna de izquierda a derecha. |
![]() |
COLUMNS ROWS | Calcula horizontalmente entre columnas de izquierda a derecha, continuando fila por fila de arriba a abajo. |
Nota
Solo puede usar los valores de eje disponibles en el objeto visual en el que trabaja. No todos los objetos visuales proporcionan todos los ejes y algunos no proporcionan ejes.
Muchas funciones tienen un parámetro Reset opcional que solo está disponible en los cálculos de objeto visual. Reset influye en si y cuando la función restablece su valor a 0 o cambia a otro ámbito mientras recorre la matriz visual. El parámetro Reset se establece en None de forma predeterminada, lo que significa que el cálculo visual nunca se reinicia. Restablecer espera que haya varios niveles en el eje. Si solo hay un nivel en el eje, puede usar PARTITIONBY. En la lista siguiente se describen los valores válidos para el Reset parámetro :
Para comprender HIGHESTPARENT y LOWESTPARENT, considere un eje que tiene tres campos en varios niveles: Año, Trimestre y Mes. HIGHESTPARENT es Año, mientras que el elemento primario más bajo es Trimestre. Por ejemplo, los siguientes cálculos visuales son equivalentes y devuelven la suma de Importe de ventas que comienza a partir de 0 para cada año:
RUNNINGSUM([Sales Amount], HIGHESTPARENT)
RUNNINGSUM([Sales Amount], 1)
RUNNINGSUM([Sales Amount], [Year])
Por el contrario, los siguientes cálculos visuales devuelven la suma del importe de ventas que comienza a partir de 0 para cada trimestre:
RUNNINGSUM([Sales Amount], LOWESTPARENT)
RUNNINGSUM([Sales Amount], 2)
Por último, este cálculo visual no se restablece y continúa con la suma del valor Importe de ventas de cada mes a los valores anteriores, sin reiniciar.
RUNNINGSUM([Sales Amount])
Axis, Reset, ORDERBY, y PARTITIONBY son cuatro funciones que se pueden usar en pares o juntas para influir en cómo se evalúa un cálculo. Forman dos pares que a menudo se usan de manera conjunta:
Axis y Reset solo están disponibles para las funciones que se pueden usar en cálculos de objeto visual y solo se pueden utilizar en este tipo de cálculos, ya que hacen referencia a la estructura visual. ORDERBY y PARTITIONBY son funciones que se pueden usar en columnas calculadas, medidas y cálculos visuales y hacer referencia a campos. Aunque realizan la misma función, son diferentes en el nivel de abstracción proporcionado; hacer referencia a la estructura visual es más flexible que la referencia explícita a campos mediante ORDERBY o PARTITIONBY.
Restablecer espera que haya varios niveles en el eje. En caso de que no tenga varios niveles en el eje, ya sea porque solo haya un campo o varios en un solo nivel en el eje, puede usar PARTITIONBY.
Especificar ambos pares funciona bien, pero también puede especificar Axis, ORDERBY y/o PARTITIONBY juntos, en cuyo caso los valores especificados para ORDERBY y PARTITIONBY invalidan los valores dictados por Axis. Reset no se pueden combinar con ORDERBY y PARTITIONBY.
Puede pensar en el par ORDERBY y PARTITIONBY como referencias de campo anclado especificando explícitamente los campos, donde Axis y Reset son independientes del campo, hacen referencia a la estructura y cualquier campo que ocurra estar en la estructura que se está usando.
Puede usar muchas de las funciones DAX existentes en los cálculos de objeto visual. Como los cálculos de objeto visual funcionan dentro de los límites de la matriz visual, las funciones que se basan en relaciones de modelo como USERELATIONSHIP, RELATED o RELATEDTABLE no están disponibles.
Los cálculos de objeto visual también presentan un conjunto de funciones específicas. Muchas de estas funciones son más fáciles de usar como accesos directos a las funciones de ventana DAX.
Nota
Use solo las funciones específicas de cálculos visuales mencionadas en la siguiente tabla. Otras funciones específicas de cálculos visuales son solo para uso interno en este momento y no deben usarse. Consulte la siguiente tabla para ver las actualizaciones de las funciones disponibles para su uso a medida que avanza esta versión preliminar.
Función | Descripción | Ejemplo | Acceso directo a |
---|---|---|---|
COLLAPSE | El cálculo se evalúa en un nivel superior del eje. | Porcentaje del elemento primario = DIVIDE([Importe de ventas], COLLAPSE([Importe de ventas], ROWS)) | N/D |
COLLAPSEALL | El cálculo se evalúa en el nivel de totales del eje. | Porcentaje del total general = DIVIDE([Importe de ventas], COLLAPSEALL([Importe de ventas], ROWS)) | N/D |
EXPAND | El cálculo se evalúa en un nivel inferior del eje. | Promedio de elementos secundarios = EXPAND(AVERAGE([Importe de ventas]), ROWS) | N/D |
EXPANDALL | El cálculo se evalúa en el nivel hoja del eje. | Promedio del nivel hoja = EXPANDALL(AVERAGE([Importe de ventas]), ROWS) | N/D |
FIRST | Hace referencia a la primera fila de un eje. | ProfitVSFirst = [Beneficios] – FIRST([Beneficios]) | INDEX(1) |
ISATLEVEL | Informa de si una columna especificada está presente en el nivel actual. | IsFiscalYearAtLevel = ISATLEVEL([Fiscal Year]) | N/D |
LAST | Hace referencia a la última fila de un eje. | ProfitVSLast = [Beneficios] – LAST([Beneficios]) | INDEX(-1) |
MOVINGAVERAGE | Agrega una media acumulada en un eje. | MovingAverageSales = MOVINGAVERAGE([Importe de ventas], 2) | WINDOW |
NEXT | Hace referencia a una fila siguiente de un eje. | ProfitVSNext = [Beneficios] – NEXT([Beneficios]) | OFFSET(1) |
PREVIOUS | Hace referencia a una fila anterior de un eje. | ProfitVSPrevious = [Beneficios] – PREVIOUS([Beneficios]) | OFFSET(-1) |
RANGE | Hace referencia a un segmento de filas de un eje. | AverageSales = AVERAGEX(RANGE(1), [Importe de venta]) | WINDOW |
RUNNINGSUM | Agrega una suma acumulada en un eje. | RunningSumSales = RUNNINGSUM([Importe de ventas]) | WINDOW |
Puede dar formato a un cálculo visual mediante tipos de datos y opciones de formato. También puede establecer una cadena de formato de nivel visual personalizada. Use las opciones Formato de datos en la sección General del panel de formato del objeto visual para establecer el formato:
Los cálculos de objeto visual se encuentran actualmente en versión preliminar y, durante la versión preliminar, debe tener en cuenta las siguientes consideraciones y limitaciones:
Los artículos siguientes pueden ser útiles al aprender y usar los cálculos de objeto visual:
Eventos
Campeonato mundial de DataViz de Power BI
14 feb, 16 - 31 mar, 16
Con 4 posibilidades de entrar, podrías ganar un paquete de conferencia y convertirlo en el Live Grand Finale en Las Vegas
Saber másCursos
Módulo
Crear cálculos visuales en Power BI Desktop - Training
Los cálculos en Power BI son necesarios para enriquecer el análisis de datos. Los cálculos visuales simplifican fórmulas complejas, mejoran el rendimiento y reducen el mantenimiento.
Certificación
Microsoft Certified: Power BI Data Analyst Associate - Certifications
Demostrar métodos y procedimientos recomendados que se alinean con los requisitos empresariales y técnicos para modelar, visualizar y analizar datos con Microsoft Power BI.