group

группирует данные по указанному полю

void group(object config, [id target] );
configobjectобъект с параметрами группировки
targetidID ветки для множественной группировки

Example

myview.group({
    by:"company", // 'company' - это имя свойства данных
    map:{
        sales:["sales","sum"]
    }   
});

Related samples

Details

Метод вызывается для каждого элемента данных.

У объект config есть несколько свойств:

  • by – свойство данных, согласно которому элементы будут объединены в группы

  • map – объект с полями данных, которые будут у элементов в группе. Свойства задаются массивом. Первый элемент этого массива - это имя свойства из исходных данных, второй элемент - функтор, который будет применяться ко всем значениям свойства (заданным первым элементом) в группе.
    В Webix доступны следующие функторы:

    • sum – получает сумму значений в группе;
    • max – получает максимальное значение в группе;
    • min - получает минимальное значение в группе;
    • count - получает количество элементов в группе;
    • any - получает случайное значение свойства из группы;
    • string - добавляет пользовательское свойство данных в группу элементов.

      Можно определить свой функтор. Подробнее читайте в 'Как создать функтор для группировки данных'.
  • missing (boolean, string) - определяет, как будут сгруппированы объекты, хедер группы которых возвращает ""/null/false/undefined. Возможные значения:

    • true (по умолчанию) пропущенные значения добавляются после сгруппированных значений,
    • false - пропущенные значения игнорируются,
    • string - создает отдельную группу для пропущенных значений или, если строка является названием какой-либо существующей группы, добавляет их в группу.

Для первоначальной группировки данных (сразу после загрузки данных) вы можете использовать параметр scheme, а точнее его ключ $group.

webix.ui({
    view:"chart",
    ...
    scheme:{
        $group:{
            by:"company", // 'company' - это имя свойства данных
            map:{
                sales:["sales","sum"],
                state:["grouped","string"]
            }   
        }
    }
});
See also
Наверх
If you have not checked yet, be sure to visit site of our main product Webix js framework and page of chart widget product.