Bottom - função de gráfico
Bottom() avalia uma expressão na última linha (inferior) de um segmento de coluna em uma tabela. A linha para a qual ela é calculada depende do valor de offset, se presente, sendo o valor padrão a linha inferior. Para gráficos que não sejam tabelas, a avaliação é feita na última linha da coluna atual, no equivalente de tabela estática do gráfico.
Sintaxe:
Bottom([TOTAL] expr [ , offset [,count ]])
Tipo de dados de retorno: dual
Argumentos:
Argumento | Descrição |
---|---|
expr | A expressão ou campo que contém os dados a serem medidos. |
offset |
Especificar um offset n maior que 1 move a avaliação da expressão n linhas acima da linha inferior. Especificando um número de compensação negativa faz a função Bottom funcionar como a função Top com o número de compensação positiva correspondente. |
count |
Ao especificar um terceiro parâmetro count maior que 1, a função retornará não um, mas uma série de valores count, um para cada uma das últimas linhas count do segmento da coluna atual. Dessa forma, a função pode ser usada como um argumento para qualquer uma das funções de intervalo especiais. Funções de intervalo |
TOTAL |
Se a tabela for unidimensional ou se o qualificador TOTAL for usado como argumento, o segmento de coluna atual será sempre igual à coluna inteira. |
Limitações:
-
As chamadas recursivas retornarão NULL.
-
A classificação por valores y em gráficos ou por colunas de expressão em tabelas não é permitida quando essa função de gráfico é usada em qualquer uma das expressões do gráfico. Essas alternativas de classificação estão, portanto, automaticamente desabilitadas. Quando você usar essa função de gráfico em uma visualização ou tabela, a classificação da visualização será revertida para a entrada classificada dessa função.
Exemplos e resultados:
Na captura de tela da tabela mostrada neste exemplo, a visualização de tabela é criada da dimensão Customer e das medições Sum(Sales) e Bottom(Sum(Sales)).
A coluna Bottom(Sum(Sales)) retorna 757 para todas as linhas, porque esse é o valor da linha inferior: Divadip.
A tabela também mostra medições mais complexas: uma criada a partir de Sum(Sales)+Bottom(Sum(Sales)) e uma rotulada como Bottom offset 3, que é criada usando a expressão Sum(Sales)+Bottom(Sum(Sales), 3) e tem o argumento offset definido como 3. Ela acrescenta o valor Sum(Sales) da linha atual ao valor da terceira linha a partir da linha inferior, isto é, a linha atual mais o valor de Betacab.
Exemplo: 2
Nas capturas de telas das tabelas mostradas neste exemplo, mais dimensões foram adicionadas às visualizações: Month e Product. Para gráficos com mais de uma dimensão, os resultados de expressões que contêm as funções Above, Below, Top e Bottom dependem da ordem em que as dimensões da coluna são classificadas pelo Qlik Sense. O Qlik Sense avalia as funções com base nos segmentos de coluna que resultam da dimensão que é classificada por último. A ordem de classificação da coluna é controlada no painel de propriedades em Classificação e não é necessariamente a ordem em que as colunas aparecem na tabela.
Na primeira tabela, a expressão é avaliada com base no Month, e na segunda tabela é avaliada com base no Product. A medição End value contém a expressão Bottom(Sum(Sales)). A linha inferior de Month é Dec e o valor de Dec dos dois valores de Product mostrados na captura de tela é 22. (Algumas linhas foram editadas da captura de tela para economia de espaço.)
Consulte o exemplo: 2 na função Above para obter detalhes adicionais.
Exemplo: 3 |
Resultado | ||
---|---|---|---|
A função Bottom pode ser usada como entrada para as funções range. Por exemplo: RangeAvg (Bottom(Sum(Sales),1,3)). |
Nos argumentos para a função Bottom(), offset é definido como 1 e count é definido como 3. A função encontra os resultados da expressão Sum(Sales) em três linhas, com a linha acima da linha inferior no segmento de coluna (porque offset=1) e as duas linhas acima (onde há uma linha). Estes três valores são usados como entrada para a função RangeAvg(), que encontra a média de valores na variação de números fornecidos. Uma tabela com Customer como dimensão dá os seguintes resultados para a expressão RangeAvg(). |
||
|
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 '|');