Saltar al contenido principal Saltar al contenido complementario

Below - función de gráfico

Below() evalúa una expresión en una fila debajo de la fila actual dentro de un segmento de columna de una tabla. La fila para la que se calcula depende del valor de offset, si está presente, el valor predeterminado es la fila inmediatamente inferior. Para los gráficos que no sean tablas, Below() evalúa la fila de debajo de la columna actual en el equivalente de tabla simple del gráfico.

Sintaxis:  

Below([TOTAL] expr [ , offset [,count ]])

Tipo de datos que devuelve: dual

Argumentos:  

Argumentos
Argumento Descripción
expr La expresión o el campo que contiene los datos que se han de medir.
offset

Especificar un offsetn mayor que 1 mueve la evaluación de la expresión n filas más hacia abajo de la fila actual.

Especificar un offset de 0 evaluará la expresión en la fila actual.

Especificar un número de offset negativo hace que la función Below opere como la función Above con el correspondiente número de offset positivo.

count

Especificando un tercer parámetro count mayor que 1, la función devolverá un rango de valores count, uno por cada una de las filas de tabla count contando hacia abajo desde la celda original. De esta manera, la función puede utilizarse como argumento en cualquiera de las funciones de rango especiales. Funciones de rango

TOTAL

Si la tabla es unidimensional o si el cualificador TOTAL se utiliza como argumento, el segmento de columna actual es siempre igual a la columna completa.

Definir el ámbito de agregación

En la última fila de un segmento de columna, se devuelve un valor NULL, ya que no hay ninguna fila debajo de él.

Nota informativaUn segmento de columna se define como un subconjunto consecutivo de celdas que tienen los mismos valores para las dimensiones de la ordenación actual. Las funciones inter-registro se calculan en el segmento de columna excluida la dimensión más a la derecha del gráfico de tabla simple equivalente. Si solo hay una dimensión en el gráfico, o si se especifica el cualificador TOTAL, la expresión se evalúa en la tabla completa.
Nota informativaSi la tabla o el equivalente de tabla tiene múltiples dimensiones verticales, el segmento de columna actual incluirá solo filas con los mismos valores que la fila actual en todas las columnas de dimensión, excepto para la columna que muestra la última dimensión en el orden de campos interno.

Limitaciones:  

  • Las llamadas recursivas devolverán NULL.

  • No se permite ordenar por valores Y en gráficos ni ordenar por columnas de expresión en tablas cuando esta función de gráfico se usa en cualquiera de las expresiones del gráfico. Estas alternativas de ordenación están por lo tanto automáticamente deshabilitadas. Cuando utiliza esta función de gráfico en una visualización o tabla, el orden de la visualización volverá a la entrada ordenada de esta función.

Ejemplos y resultados:  

Ejemplo 1:  

Visualización de la tabla para el ejemplo 1

Table visualization for Example 1.

En la tabla que se muestra en la captura de pantalla del ejemplo 1, la visualización de la tabla se crea a partir de la dimensión Customer y las medidas: Sum(Sales) y Below(Sum(Sales)).

La columna Below(Sum(Sales)) devuelve NULL para la fila Customer que contiene a Divadip, porque no hay ninguna fila por debajo de la misma. El resultado para la fila Canutility muestra el valor de Sum(Sales) para Divadip, el resultado de Betacab muestra el valor para Sum(Sales) para Canutility, etc.

La tabla también muestra medidas más complejas, que se pueden ver en las columnas etiquetadas: Sum(Sales)+Below(Sum(Sales)), Below +Offset 3 y Higher?. Estas expresiones funcionan tal como se describe en los párrafos siguientes.

Para la columna etiquetada como Sum(Sales)+Below(Sum(Sales)), la fila para Astrida muestra el resultado de la suma de los valores Sum(Sales) para las filas Betacab + Astrida (539+587). El resultado de la fila Betacab muestra el resultado de la suma de los valores Sum(Sales) para Canutility + Betacab (539+683).

La medida etiquetada como Below +Offset 3 creada utilizando la expresión Sum(Sales)+Below(Sum(Sales), 3) tiene el argumento offset, configurado como 3 y tiene el efecto de tomar el valor de la fila tres filas por debajo de la fila actual. Agrega el valor Sum(Sales) del actual Customer al valor de Customer tres filas por debajo. Los valores de las tres filas Customer más bajas son nulos.

La medida etiquetada como Higher? se crea a partir de la expresión:IF(Sum(Sales)>Below(Sum(Sales)), 'Higher'). Esto compara los valores de la fila actual en la medida Sum(Sales) con la fila de debajo de ella. Si la fila actual es un valor mayor, devuelve el texto "Higher".

Nota de sugerenciaEsta función también puede utilizarse en gráficos distintos de tablas, por ejemplo en gráficos de barras.
Nota de sugerenciaPara otros tipos de gráficos, convierta el gráfico a la tabla simple equivalente para que pueda interpretar fácilmente con qué fila está relacionada la función.

Para los gráficos con más de una dimensión, los resultados de las expresiones que contienen las funciones Above, Below, Top y Bottom dependen del orden en que Qlik Sense ordena las dimensiones de columna. Qlik Sense evalúa las funciones basándose en los segmentos de columna que resultan de la dimensión que se ordena en último lugar. El criterio de ordenación de columnas se controla en el panel de propiedades bajo Ordenación y no es necesariamente el orden en que las columnas aparecen en una tabla.Le remitimos al Ejemplo: 2 en la función Above para más detalles.

Ejemplo 2

Ejemplo 2:  

Resultado

La función Below se puede utilizar como entrada a las funciones de rango. Por ejemplo: RangeAvg (Below(Sum(Sales),1,3)).

En los argumentos de la función Below(), offset está configurado como 1 y count como 3. La función halla los resultados de la expresión Sum(Sales) en las tres filas inmediatamente inferiores a la fila actual del segmento de columna (donde haya una fila). Estos tres valores se utilizan como entrada para la función RangeAvg(), que encuentra el valor promedio en el rango de números proporcionado.

Una tabla con Customer como dimensión da los siguientes resultados para la expresión RangeAvg().

 

Astrida

Betacab

Canutility

Divadip:

659.67

720

757

-

Datos utilizados en los ejemplos:

Monthnames: LOAD *, Dual(MonthText,MonthNumber) as Month INLINE [ MonthText, MonthNumber Jan, 1 Feb, 2 Mar, 3 Apr, 4 May, 5 Jun, 6 Jul, 7 Aug, 8 Sep, 9 Oct, 10 Nov, 11 Dec, 12 ]; Sales2013: Crosstable (MonthText, Sales) LOAD * inline [ Customer|Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec Astrida|46|60|70|13|78|20|45|65|78|12|78|22 Betacab|65|56|22|79|12|56|45|24|32|78|55|15 Canutility|77|68|34|91|24|68|57|36|44|90|67|27 Divadip|57|36|44|90|67|27|57|68|47|90|80|94 ] (delimiter is '|');

¿Esta página le ha sido útil?

No dude en indicarnos en qué podemos mejorar si encuentra algún problema en esta página o su contenido, como, por ejemplo, errores tipográficos, pasos que falta o errores técnicos.