Bottom - fonction de graphique

La fonction Bottom() évalue une expression au niveau de la dernière ligne (du bas) d'un segment de colonne d'une table. La ligne pour laquelle elle est calculée dépend de la valeur de décalage offset (si présente), le paramètre par défaut étant la ligne du bas. Pour les autres graphiques que les tables, l'évaluation porte sur la dernière ligne de la colonne active dans l'équivalent du tableau simple du graphique.

Syntax:  

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

Return data type: double

Arguments:  

Argument Description
expr Expression ou champ contenant les données à mesurer.
offset

Si vous spécifiez un décalage offsetn supérieur à 1, l'évaluation de l'expression est déplacée de n lignes au-dessus de la ligne inférieure.

Si vous spécifiez un décalage négatif, la fonction Bottom aboutit au même résultat que la fonction Top avec le décalage positif correspondant.

count

Si vous spécifiez un troisième paramètre count supérieur à 1, la fonction renvoie non pas une valeur mais une plage de valeurs count, une pour chacune des count dernières lignes du segment de colonne actif. De cette façon, la fonction peut être utilisée comme argument pour l'une des fonctions de plage spéciales. Fonctions de plage

TOTAL

Si la table est unidimensionnelle ou si le qualificateur TOTAL est utilisé comme argument, le segment de colonne actif est toujours égal à la colonne entière.

Définition de l'étendue d'une agrégation

Remarque: Un segment de colonne se définit comme un sous-ensemble de cellules consécutives dotées des mêmes valeurs de dimensions dans l'ordre de tri actif. Les fonctions graphiques d'inter-enregistrements sont calculées dans le segment de colonne excluant la dimension située le plus à droite dans l'équivalent du tableau simple du graphique. Si le graphique ne comprend qu'une seule dimension ou si le qualificateur TOTAL est spécifié, l'évaluation de l'expression porte sur la table entière.
Remarque: Si la table ou l'équivalent en tableau comporte plusieurs dimensions verticales, le segment de colonne actif comprend uniquement les lignes contenant les mêmes valeurs que la ligne active dans toutes les colonnes de dimensions, à l'exception de la colonne affichant la dernière dimension dans l'ordre de tri inter-champs.

Limitations:  

Les appels récursifs renvoient la valeur NULL.

Examples and results:  

Example: 1

Visualisation de la table pour l'exemple 1.

Dans la capture d'écran de la table présentée dans cet exemple, la visualisation de la table est créée à partir de la dimension Customer et des mesures Sum(Sales) et Bottom(Sum(Sales)).

La colonne Bottom(Sum(Sales)) renvoie 757 pour toutes les lignes, car il s'agit de la valeur de la ligne inférieure : Divadip.

La table présente également des mesures plus complexes : une mesure créée à partir de Sum(Sales)+Bottom(Sum(Sales)) et une autre intitulée Bottom offset 3, créée à l'aide de l'expression Sum(Sales)+Bottom(Sum(Sales), 3) et comportant l'argument offset défini sur 3. Elle ajoute la valeur Sum(Sales) de la ligne active à la valeur de la troisième ligne en partant de la ligne du bas, autrement dit, la ligne active plus la valeur correspondant à Betacab.

Example: 2

Dans les captures d'écran des tables présentées dans cet exemple, d'autres dimensions ont été ajoutées aux visualisations : Month et Product. Pour les graphiques comportant plus d'une dimension, les résultats d'expressions contenant les fonctions Above, Below, Top et Bottom dépendent de l'ordre dans lequel les dimensions de colonne sont triées par Qlik Sense. Qlik Sense évalue les fonctions d'après les segments de colonne résultant de la dernière dimension qui a été triée. L'ordre de tri des colonnes est déterminé dans le panneau des propriétés, sous l'option Tri. Il ne correspond pas nécessairement à l'ordre d'affichage des colonnes dans une table.

Dans la première table, l'expression est évaluée sur la base de la valeur Month tandis que dans la seconde table, elle est évaluée d'après la valeur Product. La mesure End value contient l'expression Bottom(Sum(Sales)). La ligne du bas pour Month correspond à Dec tandis que la valeur de Dec comporte les deux valeurs de Product indiquées dans la capture d'écran, soit 22. (Certaines lignes ont été masquées dans la capture d'écran pour économiser de l'espace.)

Première table pour l'exemple 2. Valeur de Bottom associée à la mesure End value d'après la ligne Month (Dec).

Deuxième table pour l'exemple 2. Valeur de Bottom associée à la mesure End value d'après la ligne Product (BB pour Astrida).

Pour plus de détails, reportez-vous à l'exemple : 2 dans la fonction Above.

Example: 3

Résultat

La fonction Bottom peut s'utiliser comme donnée d'entrée dans les fonctions de plage. Par exemple : RangeAvg (Bottom(Sum(Sales),1,3)).

Dans les arguments de la fonction Bottom(), offset est défini sur 1 et count est défini sur 3. La fonction recherche les résultats de l'expressionSum(Sales) dans les trois lignes, en commençant par la ligne située au-dessus de la ligne inférieure dans le segment de colonne (car offset=1), puis les deux lignes situées au-dessus de cette ligne (lorsqu'il y a une ligne). Ces trois valeurs sont utilisées comme données d'entrée dans la fonction RangeAvg(), qui calcule la moyenne des valeurs de la plage de nombres fournie.

Une table comprenant la dimension Customer donne les résultats suivants pour l'expression RangeAvg().

 

Astrida

Betacab

Canutility

Divadip :

659.67

659.67

659.67

659.67

Monthnames:

LOAD * INLINE [

Month, 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 (Month, 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 '|');

Pour que les mois soient triés dans l'ordre correct, au moment de la création des visualisations, accédez à la section Tri (Sorting) du panneau des propriétés, sélectionnez Mois (Month) et cochez la case Trier par expression (Sort by expression). Dans la zone de l'expression, spécifiez Monthnumber.