Размещение

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

Движок также поддерживает служебные ячейки header и footer для строк и столбцов, а также отдельные ячейки заголовков title. Чтобы обозначить такие группы, в их спецификациях задайте свойство role со значением column-header, column-footer, column-title, row-header, row-footer или row-title. Число элементов каждого вида должно соответствовать числу строк или столбцов таблицы. Если элементов меньше, часть ячеек останется пустой. Если больше, лишние элементы будут проигнорированы, а в журнале появится предупреждение.

Порядок групп определяется их порядком в спецификации и внутренним порядком элементов, если одно определение группового примитива создаёт несколько экземпляров. Последовательность определений групп в спецификации задаёт их расположение. Внутри одного определения порядок экземпляров влияет и на отрисовку, и на размещение. Его можно изменить свойством sort.

Свойства размещения

Свойства, задающие размещение вложенных групповых примитивов в сетке.

Свойство Тип Описание
align String | Object Выравнивание строк и столбцов сетки. Допустимые строковые значения: all, each и none (по умолчанию). При none графики размещаются последовательно друг за другом. При each элементы выстраиваются в сетку, но строки и столбцы могут иметь разный размер. При all элементы выравниваются, а все строки или столбцы получают одинаковый размер по наибольшему элементу. Строковое значение действует одновременно на строки и столбцы. Чтобы задать их отдельно, используйте объект {"row": string, "column": string}.
bounds String Способ расчёта границ отдельного графика: full (по умолчанию) или flush. При full учитывается вся рассчитанная область, включая оси, заголовок и легенду. При flush используются только заданные ширина и высота группового примитива. Режим flush полезен для равномерной сетки графиков без осей и легенд.
center Boolean | Object Логический флаг: центрировать ли элементы групп относительно их строк или столбцов. Объект {"row": boolean, "column": boolean} позволяет задать разные значения для строк и столбцов. По умолчанию центрирование отключено.
columns Number Число столбцов в сетке. Если не задано, предполагается неограниченное число столбцов, то есть одна строка.
padding Number | Object Отступы между элементами строки или столбца в пикселях. Объект {"row": number, "column": number} позволяет задать разные отступы для строк и столбцов.
offset Number | Object Смещение служебных ячеек header, footer и title в пикселях по перпендикуляру к краю сетки (по умолчанию 0). Число действует на все такие элементы. Объект позволяет задать значения отдельно с помощью свойств columnHeader, columnFooter, columnTitle, rowHeader, rowFooter и rowTitle.
headerBand Number | Object Параметр положения элемента header внутри ячейки в интервале от 0 до 1. Для столбца 0 соответствует левому краю ячейки, а 1 — правому. Число действует на ячейки header строк и столбцов. Объект {"row": number, "column": number} позволяет задать значения отдельно. По умолчанию null: положение определяется координатой x (для столбцов) или y (для строк) ближайшей ячейки содержимого.
footerBand Number | Object Параметр положения элемента footer внутри ячейки в интервале от 0 до 1. Для столбца 0 соответствует левому краю ячейки, а 1 — правому. Число действует на ячейки footer строк и столбцов. Объект {"row": number, "column": number} позволяет задать значения отдельно. По умолчанию null: положение определяется координатой x (для столбцов) или y (для строк) ближайшей ячейки содержимого.
titleAnchor String | Object Сторона сетки, на которой располагается заголовок. "start" (по умолчанию) помещает заголовки строк слева, а столбцов — сверху; "end" помещает их справа и снизу соответственно. Строковое значение действует на строки и столбцы. Объект {"row": string, "column": string} позволяет задать их отдельно.
titleBand Number | Object Параметр положения заголовка в ячейке от 0 до 1. Для столбца 0 соответствует левому краю ячейки, а 1 — правому. По умолчанию 0.5, то есть заголовок находится по центру. Число действует на заголовки строк и столбцов. Объект {"row": number, "column": number} позволяет задать значения отдельно.