Bottom — функция диаграммы

Функция Bottom() оценивает выражение в последней (нижней) строке сегмента столбца в таблице. Строка, для которой выполняется вычисление, зависит от значения элемента offset, если таковой имеет место, по умолчанию принимается нижняя строка. Для диаграмм, за исключением таблиц, оценка выполняется в последней строке текущего столбца в эквиваленте прямой таблицы диаграммы.

Syntax:  

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

Return data type: двойное значение

Arguments:  

Аргумент Описание
expr Выражение или поле, содержащее данные для измерения.
offset

Если задать значение offsetn больше 1, можно будет переместить оценку выражения по n строкам выше нижней строки.

Если задать отрицательное число смещения, функция Bottom будет работать как функция Top с соответствующим положительным числом смещения.

count

Если задать для третьего параметра count значение больше 1, функция вернет не одно, а ряд значений элемента count: по одному для каждой последней строки элемента count текущего сегмента столбца. В данной форме функция может использоваться в качестве аргумента для любой специальной функции интервала. Функции над выборкой

TOTAL

Если таблица имеет одно измерение, или если в качестве аргумента используется префикс TOTAL, текущий сегмент столбца всегда равен всему столбцу.

Определение объема агрегирования

Примечание: Сегмент столбца определяется как последовательное подмножество ячеек с теми же значениями для измерений в текущем порядке сортировки. Межзаписные функции диаграмм выполняют вычисления в сегменте столбца за исключением крайнего правого измерения в эквивалентной прямой таблице. Если в диаграмме есть только одно измерение, или если указан квалификатор TOTAL, выражение оценивается по всей таблице.
Примечание: Если таблица или эквивалент таблицы имеют несколько вертикальных измерений, текущий сегмент столбца будет включать только строки с теми же значениями, что и текущая строка во всех столбцах измерений, кроме столбца с последним измерением в межполевом порядке сортировки.

Limitations:  

Рекурсивные вызовы возвращают значение NULL.

Examples and results:  

Example: 1

Визуализация таблицы для примера 1.

На снимке таблицы, показанной в этом примере, визуализация таблицы создана из измерения Customer и мер: Sum(Sales) и Bottom(Sum(Sales)).

Столбец Bottom(Sum(Sales)) возвращает значение 757 для всех строк, поскольку это значение нижней строки: Divadip.

В таблице также показаны более сложные меры: одна, созданная из элемента Sum(Sales)+Bottom(Sum(Sales)), а другая, помеченная как Bottom offset 3, созданная с помощью выражения Sum(Sales)+Bottom(Sum(Sales), 3), и имеющая аргумент offset, установленный на 3. Таким образом добавляется значение Sum(Sales) для текущей строки к значению из третьей строки от нижней строки, т. е. текущая строка плюс значение для элементаBetacab.

Example: 2

На снимках таблиц, показанных в этом примере, к визуализациям добавлено больше измерений: Month и Product. Для диаграмм с несколькими измерениями результаты выражений, содержащих функции Above, Below, Top и Bottom, зависят от порядка, в котором измерения столбцов сортируются Qlik Sense. Программа Qlik Sense оценивает функции на основе сегментов столбца, полученных из измерения, отсортированного последним. Контроль за порядком сортировки столбцов осуществляется на панели свойств под элементом Сортировка. Этот порядок не обязательно соответствует порядку отображения столбцов в таблице.

В первой таблице выражение оценивается на основе элемента Month, а во второй таблице оно основывается на элементе Product. Мера End value содержит выражение Bottom(Sum(Sales)). Нижней строкой для измерения Month является Dec, а значением для Dec, как и для обоих значений элемента Product показанных на снимке, является 22. (Некоторые строки были исключены из снимков при редактировании, чтобы сэкономить место.)

Первая таблица для примера 2. Значение элемента Bottom для меры End value основано на элементе Month (Dec).

Вторая таблица для примера 2. Значение элемента Bottom для меры End value основано на элементе Product (BB для Astrida).

Дополнительную информацию см. в примере 2 для функции Above.

Example: 3

Результат

Функцию Bottom можно использовать как ввод в функции над выборкой. Например, элемент RangeAvg (Bottom(Sum(Sales),1,3)).

В аргументах для функции Bottom() для элемента offset задано значение 1, а для элемента count задано значение 3. Функция находит результаты выражения Sum(Sales) в трех строках, начиная со строки над нижней строкой в сегменте столбца (поскольку offset=1) и в двух строках над ней (если есть строка). Эти три значения используются как ввод в функцию RangeAvg(), которая находит среднее значение в предоставленном диапазоне чисел.

Таблица с элементом Customer в виде измерения выдает следующие результаты для выражения 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 '|');

Чтобы выполнить сортировку месяцев в правильном порядке, при создании визуализаций перейдите в раздел Sorting на панели свойств, выберите элемент Month и установите флажок Sort by expression. В поле выражения напишите Monthnumber.