Шкала
Шкалы — функции, переводящие область значений данных (числа, даты, строки и т. п.) в диапазон визуальных значений (пиксели, цвета, размеры). Внутри Vega-Lite используются шкалы Vega, основанные на библиотеке d3-scale. Дополнительные сведения о шкалах приведены в статье Майка Бостока «Introducing d3-scale».
Vega-Lite автоматически создаёт шкалы для полей в каналах положения и каналах свойств примитивов. Объект scale в определении поля позволяет настроить свойства шкалы, например тип, область данных и выходной диапазон.
// Спецификация одиночного представления или слоя
{
...,
"mark/layer": ...,
"encoding": {
"x": {
"field": ...,
"type": ...,
"scale": { // Шкала
"type": ...,
...
},
...
},
"y": ...,
...
},
...
}
Помимо свойства scale каждого канала, объект конфигурации верхнего уровня config содержит настройку шкал (config: {scale: {...}}), задающую свойства по умолчанию для всех шкал.
О средствах, поясняющих шкалы, читайте на страницах осей и легенд.
Содержание страницы
- Типы шкал
- Область значений данных
- Выходной диапазон
- Общие свойства шкал
- Непрерывные шкалы
- Дискретные шкалы
- Шкалы с дискретизацией
- Отключение шкалы
- Настройка шкал по умолчанию
Типы шкал
Свойство type позволяет выбрать тип шкалы.
| Свойство | Тип | Описание |
|---|---|---|
type |
ScaleType | Тип шкалы. Поддерживаются три группы: 1. Непрерывные шкалы переводят непрерывную область в непрерывный диапазон: linear, pow, sqrt, symlog, log, time, utc. 2. Дискретные шкалы переводят дискретную область в дискретный (ordinal) или непрерывный (band, point) диапазон. 3. Шкалы с дискретизацией переводят непрерывную область в дискретный диапазон: bin-ordinal, quantile, quantize, threshold. По умолчанию: см. таблицу типов шкал. |
По умолчанию Vega-Lite использует следующие типы шкал для соответствующих типов данных и каналов кодирования:
| Канал | Номинальные / порядковые | Количественные | Количественные с bin |
Временные |
|---|---|---|---|---|
x, y |
band или point |
linear |
linear |
time |
size, opacity |
point |
linear |
linear |
time |
color |
ordinal |
linear |
bin-ordinal |
linear |
shape |
ordinal |
— | — | — |
Здесь «с bin» означает количественное поле после разбиения на интервалы. Для позиционных номинальных и порядковых полей шкала band используется по умолчанию у столбцов, изображений, прямоугольников и отрезков; у остальных примитивов — point.
Область значений данных
По умолчанию область данных шкалы берётся из поля канала. Свойство domain позволяет задать её явно; sort управляет порядком дискретных значений.
| Свойство | Тип | Описание |
|---|---|---|
domain |
(null, string, number, boolean, DateTime, ExprRef)[], "unaggregated", ParameterExtent, DomainUnionWith, ExprRef | Собственные значения области данных: постоянные или динамические, управляемые параметром. 1. Для количественных полей постоянная область может быть массивом минимума и максимума (в сочетании с domainMid создаёт расходящуюся шкалу), массивом из более чем двух значений для кусочной шкалы или строкой "unaggregated" для агрегированного поля, чтобы включить исходные значения до агрегирования.2. Для временных полей — массив минимума и максимума в виде временных меток или объектов DateTime. 3. Для порядковых и номинальных полей — массив допустимых входных значений. 4. Объект с unionWith объединяет заданные постоянные значения со значениями поля. Например, domain: {unionWith: [0, 100]} всегда включает [0, 100], но расширяется для значений поля вне этих границ.5. Объект с полем или каналом параметра позволяет интерактивно задавать область шкалы. |
domainMax |
number, DateTime, ExprRef | Максимум области данных шкалы; переопределяет domain. Предназначено только для шкал с непрерывной областью данных. |
domainMin |
number, DateTime, ExprRef | Минимум области данных шкалы; переопределяет domain. Предназначено только для шкал с непрерывной областью данных. |
domainMid |
number, ExprRef | Вставляет одну среднюю точку в область из двух элементов. Она должна находиться между минимумом и максимумом. Полезно для задания середины расходящейся цветовой шкалы. Предназначено только для шкал с непрерывной кусочной областью данных. |
domainRaw |
ExprRef | Выражение, возвращающее массив исходных значений. Если результат не равен null, непосредственно переопределяет domain. Используется для перемещения и масштабирования шкалы: первоначальная область может вычисляться из данных, а затем изменяться в ответ на действия пользователя через domainRaw. |
Часто domain используют, например, чтобы ограничить диапазон значений x в диаграмме. Однако одного этого свойства недостаточно для желаемого результата.
Временная шкала с заданными границами
Для временной шкалы domain может содержать объекты даты и времени:
Обрезка или удаление данных за пределами области
Само по себе ограничение domain не удаляет примитивы за заданными границами. Здесь область x ограничена значениями [300, 450], но линия всё ещё выходит за её пределы:
Первый вариант — clip: true в объекте mark: линия обрезается по области построения.
Второй вариант — фильтрация данных через transform. Она удаляет записи за пределами диапазона; поэтому форма линии у края может отличаться от варианта с обрезкой.
Интерактивная область domainRaw
domainRaw может связывать область значений шкалы с параметром и менять её в ответ на действия пользователя:
Выходной диапазон
Диапазон шкалы — видимые значения, соответствующие области данных. Стандартные диапазоны зависят от канала:
| Канал | Диапазон по умолчанию |
|---|---|
x |
От 0 до ширины области построения. |
y |
От 0 до её высоты с учётом направления координат. |
opacity |
Границы minOpacity и maxOpacity из конфигурации. |
color |
Именованные диапазоны по типу поля: "category" для номинальных, "ordinal" для порядковых, "heatmap" для количественных и временных полей в rect и "ramp" для остальных примитивов. Примеры — в разделе цветовых схем. |
size |
Границы из конфигурации по типу примитива: min/maxBandSize для bar и tick, min/maxStrokeWidth для line и rule, min/maxSize для point, square и circle, min/maxFontSize для text. |
shape |
Именованный диапазон symbol. |
Для настройки выходных значений задайте range непосредственно или специальное свойство scheme для порядковых и непрерывных цветовых шкал.
| Свойство | Тип | Описание |
|---|---|---|
range |
RangeEnum, (number, string, (number)[], ExprRef)[], FieldRange | Выходной диапазон шкалы: • строка с именем предопределённого диапазона, например "symbol" или "diverging";• для непрерывной шкалы — массив минимума и максимума или более двух элементов для кусочной шкалы; • для дискретной или дискретизующей шкалы — массив выходных значений или объект с field, задающим поле этих значений. Например, если поле color содержит имена цветов CSS, можно указать {field: "color"}.Примечания: для цветовых шкал вместо range можно задать scheme. Непосредственно заданный range каналов x и y игнорируется: диапазон настраивается через размеры представления width и height. |
rangeMin |
number, string, ExprRef | Минимум выходного диапазона шкалы; переопределяет range или диапазон по умолчанию. Предназначено только для шкал с непрерывным выходным диапазоном. |
rangeMax |
number, string, ExprRef | Максимум выходного диапазона шкалы; переопределяет range или диапазон по умолчанию. Предназначено только для шкал с непрерывным выходным диапазоном. |
Цвета из другого поля
В примере шкала отображает значения поля l в цвета из поля c:
Примечание: это работает только при соответствии один к одному между полем области данных l и полем выходного диапазона c.
Отдельные границы диапазона
rangeMin меняет только минимальное значение диапазона, сохраняя стандартный максимум:
rangeMax аналогично меняет только максимальное значение:
Цветовые схемы
Цветовая схема — именованная палитра, используемая как выходной диапазон шкалы канала color. Vega-Lite через Vega предоставляет набор схем, разработанных с учётом особенностей восприятия. Многие взяты из проектов d3-scale, d3-scale-chromatic и ColorBrewer.
По умолчанию Vega-Lite выбирает разные цветовые схемы по типу кодируемого поля:
- Номинальные поля используют именованный диапазон category, по умолчанию — схему tableau10:
- Порядковые поля используют именованный диапазон ordinal, по умолчанию — схему blues:
- Количественные и временные поля используют именованный диапазон
heatmap(по умолчанию — yellowgreenblue) для прямоугольников иramp(по умолчанию — blues) для других примитивов:
Палитру можно изменить тремя способами.
1. Указать собственную scheme
| Свойство | Тип | Описание |
|---|---|---|
scheme |
ColorScheme, SchemeParams, ExprRef | Строка с именем цветовой схемы, например "category10" или "blues", либо объект параметров схемы.Дискретные палитры используются с дискретными и дискретизующими шкалами. Непрерывные палитры предназначены для цветовых шкал. Чтобы задать собственную палитру, передайте список цветов в выходном диапазоне шкалы. Полный список схем — в справочнике Vega. |
Можно сослаться на существующую цветовую схему. Например, следующая диаграмма использует "category20b":
Вместо строки scheme может быть объектом:
| Свойство | Тип | Описание |
|---|---|---|
name |
ColorScheme | Имя цветовой схемы для порядковой шкалы, например "category10" или "blues". Полный список — в справочнике схем Vega. |
extent |
(number)[] | Используемая часть цветового диапазона. Например, [0.2, 1] перемасштабирует схему, исключив цвета из части [0, 0.2). |
count |
number | Количество используемых цветов. Полезно для шкал вроде "quantize", где длина выходного диапазона определяет число дискретных интервалов области данных. |
2. Передать массив допустимых строк цветов CSS в range
3. Изменить схемы по умолчанию через конфигурацию диапазонов
Подробнее — в конфигурации диапазонов.
Общие свойства шкал
Кроме типа, области данных и диапазона, любая шкала поддерживает:
| Свойство | Тип | Описание |
|---|---|---|
reverse |
boolean, ExprRef | Если true, обращает порядок выходного диапазона.По умолчанию: false. |
round |
boolean, ExprRef | Если true, округляет числовые выходные значения до целых, что помогает привязать их к пиксельной сетке.По умолчанию: false. |
Непрерывные шкалы
Непрерывная шкала переводит непрерывные числа или даты в непрерывный диапазон позиций, размеров или цветов. Для количественных полей доступны linear, log, pow, sqrt и symlog; для временных — time, utc и, при необходимости, symlog. По умолчанию используются linear и time соответственно.
Дополнительные свойства непрерывной шкалы:
| Свойство | Тип | Описание |
|---|---|---|
clamp |
boolean, ExprRef | Если true, значения за пределами области данных ограничиваются минимумом или максимумом выходного диапазона.По умолчанию: свойство clamp конфигурации шкал, по умолчанию true. |
interpolate |
ScaleInterpolateEnum, ExprRef, ScaleInterpolateParams | Метод интерполяции выходных значений. По умолчанию применяется общий интерполятор для чисел, дат, строк и цветов (в пространстве HCL). Для цветовых диапазонов можно выбрать другое пространство: rgb, hsl, hsl-long, lab, hcl, hcl-long, cubehelix, cubehelix-long. Варианты -long используют более длинный путь в полярных цветовых пространствах.Можно задать объект со строковым type и необязательным числовым gamma, применимым к интерполяторам RGB и Cubehelix. Подробности описаны в документации d3-interpolate.По умолчанию: hcl. |
nice |
boolean, number, TimeInterval, TimeIntervalStep, ExprRef | Расширяет область данных до удобных округлённых границ, обычно до ближайшего круглого значения. Полезно для неровных границ, вычисленных из данных: [0.201479…, 0.996679…] может стать [0.2, 1.0].Для количественных шкал, например линейных, принимает логическое значение или число желаемых делений. Число позволяет управлять шагом расширения и гарантирует, что деления точно покрывают область. Для временных полей со шкалами time и utc принимает строку интервала: "millisecond", "second", "minute", "hour", "day", "week", "month", "year"; либо объект, например {"interval": "month", "step": 3}, выравнивающий границы по кварталам (январь, апрель, июль, октябрь).По умолчанию: true для количественных полей без bin и явно заданных границ области; в остальных случаях false. |
padding |
number, ExprRef | Для непрерывных шкал расширяет область данных, оставляя указанное число пикселей у каждого края диапазона. Выходной диапазон должен представлять пиксели. Отступ применяется до остальных корректировок, включая zero, nice, domainMin и domainMax.Для полосовых шкал одновременно задаёт одинаковые paddingInner и paddingOuter. Для точечных шкал — другое имя paddingOuter.По умолчанию: у непрерывных шкал — continuousPadding конфигурации; у полосовых и точечных — см. paddingInner и paddingOuter. Vega-Lite выбирает отступ так, чтобы ширина/высота равнялась числу уникальных значений, умноженному на шаг. Значение неотрицательное. |
zero |
boolean, ExprRef | Если true, включает нулевую базовую линию в область данных шкалы.По умолчанию: true для каналов x и y, если количественное поле не разбито на интервалы и собственный domain не задан; иначе false.Примечание: шкалы log, time и utc не поддерживают zero. |
Линейная шкала
"linear" сохраняет пропорциональные расстояния между числами. Результат имеет вид y = mx + b, где x — значение данных.
Степенная шкала
Степенная шкала ("pow") применяет степенное преобразование входного значения перед вычислением выхода. Значение выходного диапазона y выражается функцией входного x: y = mxᵏ + b, где k — exponent. Поддерживаются отрицательные значения области данных: в этом случае входное значение и полученное выходное значение умножаются на −1.
| Свойство | Тип | Описание |
|---|---|---|
exponent |
number, ExprRef | Показатель степени шкалы pow. |
Квадратнокорневая шкала
"sqrt" — сокращение для степенной шкалы с exponent: 0.5.
Логарифмическая шкала
Логарифмическая шкала ("log") применяет логарифмическое преобразование входного значения перед вычислением выхода. Она особенно полезна для данных, различающихся на несколько порядков величины. Отображение можно представить как y = m logₐ(x) + b, где a — основание base.
Поскольку log(0) = −∞, область данных должна быть строго положительной или строго отрицательной: она не должна включать или пересекать ноль. Положительная область определяет поведение для положительных значений, отрицательная — для отрицательных; в последнем случае входные и выходные значения неявно умножаются на −1. Поведение не определено, если передать отрицательное значение шкале с положительной областью или наоборот.
| Свойство | Тип | Описание |
|---|---|---|
base |
number, ExprRef | Основание логарифма шкалы log.По умолчанию: 10. |
Пример логарифмической шкалы y:
Симметричная логарифмическая шкала
Симметричная логарифмическая шкала ("symlog") даёт масштабирование, похожее на логарифмическое, но допускает неположительные числа. Она особенно полезна для данных, различающихся на несколько порядков величины и включающих отрицательные значения или ноль. Подробнее — в работе Уэббера «A bi-symmetric log transformation for wide-range data».
| Свойство | Тип | Описание |
|---|---|---|
constant |
number, ExprRef | Константа, определяющая наклон функции symlog около нуля. Используется только для шкал symlog.По умолчанию: 1. |
Временная шкала и UTC
Шкалы "time" и "utc" — непрерывные шкалы с временной областью данных. Входными значениями считаются объекты JavaScript Date или временные метки. time использует текущий местный часовой пояс, а utc — координированное всемирное время UTC.
Кусочная и расходящаяся шкала
Любой тип непрерывной шкалы — linear, pow, sqrt, log, symlog, time или utc — позволяет создать расходящуюся цветовую диаграмму, если задать domain с несколькими значениями.
Если задан range, число его элементов должно совпадать с числом элементов domain. В качестве диапазона кусочной шкалы также подходят расходящиеся цветовые схемы.
Дискретные шкалы
Дискретная шкала сопоставляет отдельные значения области данных с отдельными или непрерывными выходными позициями.
Порядковая шкала
"ordinal" работает как таблица соответствий между дискретными значениями и цветами, формами или другими видимыми значениями. Vega-Lite использует её по умолчанию для каналов color и shape. Здесь поле Origin одновременно сопоставлено с набором цветов и форм:
Можно задать массив range, соответствующий элементам domain. Изменение порядка в любом из них меняет сопоставление. Для цвета доступна и собственная scheme.
Полосовая и точечная шкалы
"band" и "point" принимают дискретные значения, но размещают их вдоль непрерывного числового диапазона, например в пикселях.
Полосовая шкала делит выходной диапазон на равномерные полосы. Она обычно используется для столбцов с категориальной осью. Размер всей области можно задать явно, например [0, 500], или указать фиксированный шаг между полосами. В последнем случае итоговая ширина зависит от числа категорий.
Иллюстрация из документации d3-scale показывает работу полосовой шкалы:

Точечная шкала похожа на полосовую, но внутренняя ширина каждой полосы равна нулю. Она часто применяется в диаграммах рассеяния с дискретной осью. Её диапазон также задаётся границами или шагом {"step": 20}.
Иллюстрация из документации d3-scale показывает работу точечной шкалы:

Для номинальных и порядковых полей в каналах положения (x, y) Vega-Lite выбирает полосовые шкалы для столбцов и прямоугольников. Как указано в таблице типов шкал, это также относится к изображениям и отрезкам; для остальных примитивов и каналов size и opacity по умолчанию используются точечные шкалы. Пример полосовой шкалы x:
Шаг полосовой шкалы можно изменить свойством step в ширине или высоте представления. Сравните фиксированную ширину и ширину на каждый дискретный шаг:
Полосовые и точечные шкалы дополнительно поддерживают:
| Свойство | Тип | Описание |
|---|---|---|
align |
number, ExprRef | Выравнивание шагов внутри выходного диапазона. Допустимо от 0 до 1: 0.5 центрирует шаги, 0 или 1 сдвигает полосы к одному краю, например к оси.По умолчанию: 0.5. |
padding |
number, ExprRef | Для непрерывных шкал расширяет область данных, оставляя указанное число пикселей у каждого края диапазона. Выходной диапазон должен представлять пиксели. Отступ применяется до остальных корректировок, включая zero, nice, domainMin и domainMax.Для полосовых шкал одновременно задаёт одинаковые paddingInner и paddingOuter. Для точечных шкал — другое имя paddingOuter.По умолчанию: у непрерывных шкал — continuousPadding конфигурации; у полосовых и точечных — см. paddingInner и paddingOuter. Vega-Lite выбирает отступ так, чтобы ширина/высота равнялась числу уникальных значений, умноженному на шаг. Значение неотрицательное. |
paddingInner |
number, ExprRef | Внутренний отступ каждого шага полосовой шкалы как доля шага, от 0 до 1.Для точечной шкалы недопустим: у неё нет внутренней ширины полосы, только расстояние между позициями. По умолчанию: bandPaddingInner конфигурации шкал. |
paddingOuter |
number, ExprRef | Внешний отступ у концов диапазона полосовой или точечной шкалы как доля шага, от 0 до 1.По умолчанию: bandPaddingOuter конфигурации для полосовой шкалы и pointPadding для точечной. Vega-Lite выбирает отступ так, чтобы ширина/высота равнялась числу уникальных значений, умноженному на шаг. |
Шкалы с дискретизацией
Такие шкалы делят непрерывную область данных на отрезки и присваивают каждому отдельное видимое значение.
Интервальная линейная шкала
"bin-linear" применяется к количественным полям после разбиения на интервалы, чтобы корректно создавать подписи легенды. Vega-Lite всегда выбирает её для интервального поля в каналах размера и прозрачности:
Интервальная порядковая шкала
"bin-ordinal" также обеспечивает правильные подписи интервалов. Она всегда используется для интервального количественного поля в канале цвета:
Как и у порядковой цветовой шкалы, можно задать собственный range или scheme. Кроме того, свойство bins задаёт границы интервалов области данных.
| Свойство | Тип | Описание |
|---|---|---|
bins |
ScaleBins | Границы интервалов шкалы задаются явным массивом или объектом параметров интервалов. Массив должен включать начальную и конечную границы: [0, 5, 10, 15, 20] задаёт четыре интервала [0, 5), [5, 10), [10, 15), [15, 20]. Элементы массива могут содержать ссылки на сигналы.Объект задаёт шаг step и необязательные границы start и stop. Если границы интервалов заданы, оси и легенды учитывают их при выборе делений и текстовых подписей. |
Параметры интервалов
Объект параметров интервалов свойства bins поддерживает следующие свойства:
| Свойство | Тип | Описание |
|---|---|---|
step |
number | Обязательное свойство. Шаг, определяющий ширину интервала. |
start |
number | Начальная (наименьшая) граница интервалов. По умолчанию: минимум области данных шкалы. |
stop |
number | Конечная (наибольшая) граница интервалов. По умолчанию: максимум области данных шкалы. |
Примечание: исходная таблица ошибочно запрашивает bins у ScaleBinParams. В актуальной схеме объект содержит step, start и stop, приведённые выше.
Квантильная шкала
"quantile" строит дискретный диапазон по квантилям исходной выборки. Область данных воспринимается как непрерывная, хотя задаётся набором наблюдений. Шкала сортирует значения и делит их на группы примерно с одинаковым числом записей. Число выходных значений определяет число групп; если range не указан, создаются четыре квартиля.
Квантильные шкалы особенно полезны для кодирования цветом или размером с фиксированным числом выходных значений. Дискретный набор уровней, обычно от 5 до 9 цветов или размеров, иногда позволяет точнее сравнивать значения, чем непрерывный диапазон. Группы получают примерно одинаковое число записей. Квантизующие шкалы, напротив, равномерно делят входную область и не гарантируют равномерного распределения точек по выходным визуальным значениям.
Квантизующая шкала
Квантизующие шкалы ("quantize") похожи на линейные, но используют дискретный выходной диапазон. Непрерывная область делится на равные по ширине интервалы по числу выходных значений. Каждое значение y можно выразить квантованной линейной функцией входного x: y = m round(x) + b. Если range не задан, по умолчанию используются четыре равномерных интервала.
Эти шкалы особенно полезны для кодирования цветом или размером с фиксированным числом уровней. Дискретный набор, обычно от 5 до 9 цветов или размеров, иногда позволяет точнее сравнивать значения, чем непрерывный диапазон. Квантильные шкалы, напротив, создают группы с равным числом элементов, а не с равной шириной интервала.
Здесь также доступны свойства nice и zero для округления границ и включения нуля:
| Свойство | Тип | Описание |
|---|---|---|
nice |
boolean, number, TimeInterval, TimeIntervalStep, ExprRef | Расширяет область данных до удобных округлённых границ, обычно до ближайшего круглого значения. Полезно для неровных границ, вычисленных из данных: [0.201479…, 0.996679…] может стать [0.2, 1.0].Для количественных шкал, например линейных, принимает логическое значение или число желаемых делений. Число позволяет управлять шагом расширения и гарантирует, что деления точно покрывают область. Для временных полей со шкалами time и utc принимает строку интервала: "millisecond", "second", "minute", "hour", "day", "week", "month", "year"; либо объект, например {"interval": "month", "step": 3}, выравнивающий границы по кварталам (январь, апрель, июль, октябрь).По умолчанию: true для количественных полей без bin и явно заданных границ области; в остальных случаях false. |
zero |
boolean, ExprRef | Если true, включает нулевую базовую линию в область данных шкалы.По умолчанию: true для каналов x и y, если количественное поле не разбито на интервалы и собственный domain не задан; иначе false.Примечание: шкалы log, time и utc не поддерживают zero. |
Пороговая шкала
"threshold" делит непрерывную область по произвольным порогам, а не по равным интервалам. Массив domain с N порогами обязателен; массив range должен содержать N + 1 выходное значение.
Отключение шкалы
scale: null передаёт значение данных непосредственно в видимое свойство. Например, если данные уже содержат имена цветов, их можно использовать без цветовой шкалы:
Настройка шкал по умолчанию
// Спецификация представления верхнего уровня
{
...,
"config": {
"scale": {
... // Конфигурация шкал
},
"range": {
... // Конфигурация диапазонов шкал
},
...
},
...
}
config.scale
Конфигурация config: {scale: {...}} задаёт общую тему всех шкал и может содержать следующие свойства.
Отступы
| Свойство | Тип | Описание |
|---|---|---|
bandPaddingInner |
number, ExprRef | Внутренний отступ по умолчанию для полосовых шкал x и y, от 0 до 1.По умолчанию: bandWithNestedOffsetPaddingInner для шкал с вложенными смещениями; barBandPaddingInner для столбцов (обычно 0.1); rectBandPaddingInner для прямоугольников и остальных примитивов (обычно 0). |
barBandPaddingInner |
number, ExprRef | Внутренний отступ по умолчанию полосовых шкал x и y примитивов bar, от 0 до 1.По умолчанию: 0.1. |
rectBandPaddingInner |
number, ExprRef | Внутренний отступ по умолчанию полосовых шкал x и y примитивов rect, от 0 до 1.По умолчанию: 0. |
bandWithNestedOffsetPaddingInner |
number, ExprRef | Внутренний отступ по умолчанию полосовых шкал x и y с вложенным кодированием xOffset или yOffset, от 0 до 1.По умолчанию: 0.2. |
offsetBandPaddingInner |
number, ExprRef | Внутренний отступ по умолчанию полосовых шкал xOffset и yOffset.По умолчанию: 0. |
bandPaddingOuter |
number, ExprRef | Внешний отступ по умолчанию полосовых шкал x и y, от 0 до 1.По умолчанию: paddingInner / 2, чтобы ширина/высота равнялась числу уникальных значений, умноженному на шаг. |
bandWithNestedOffsetPaddingOuter |
number, ExprRef | Внешний отступ по умолчанию полосовых шкал x и y с вложенным кодированием xOffset или yOffset, от 0 до 1.По умолчанию: 0.2. |
offsetBandPaddingOuter |
number, ExprRef | Внешний отступ по умолчанию полосовых шкал xOffset и yOffset.По умолчанию: 0. |
continuousPadding |
number, ExprRef | Отступ по умолчанию для непрерывных шкал x и y, неотрицательный.По умолчанию: ширина столбца для непрерывной шкалы X вертикальных столбцов или непрерывной шкалы Y горизонтальных столбцов; иначе 0. |
pointPadding |
number, ExprRef | Внешний отступ по умолчанию точечных шкал x и y, от 0 до 1.По умолчанию: 0.5, чтобы ширина/высота равнялась числу уникальных значений, умноженному на шаг. |
Выходной диапазон
| Свойство | Тип | Описание |
|---|---|---|
maxBandSize |
number | Максимум по умолчанию при кодировании количественного поля размером/шириной полосы столбца. Неотрицательный. Если не задано (по умолчанию), используется размер оси (ширина или высота) минус 1. |
minBandSize |
number | Минимум по умолчанию шкалы размера/ширины полосы для количественных полей в bar и tick. Неотрицательный.По умолчанию: 2. |
maxFontSize |
number | Максимум по умолчанию шкалы размера шрифта текста для количественных полей. Неотрицательный. По умолчанию: 40. |
minFontSize |
number | Минимум по умолчанию шкалы размера шрифта текста для количественных полей. Неотрицательный. По умолчанию: 8. |
maxOpacity |
number | Максимальная непрозрачность по умолчанию при кодировании поля, от 0 до 1.По умолчанию: 0.8. |
minOpacity |
number | Минимальная непрозрачность по умолчанию при кодировании поля, от 0 до 1.По умолчанию: 0.3. |
maxSize |
number | Максимум по умолчанию шкалы размера точек. Неотрицательный. |
minSize |
number | Минимум по умолчанию шкалы размера точек. Неотрицательный. По умолчанию: 9. |
maxStrokeWidth |
number | Максимальная толщина по умолчанию для шкалы strokeWidth примитивов rule и line и шкалы size примитива trail. Неотрицательная.По умолчанию: 4. |
minStrokeWidth |
number | Минимальная толщина по умолчанию для шкалы strokeWidth примитивов rule и line и шкалы size примитива trail. Неотрицательная.По умолчанию: 1. |
Выход шкалы для некорректных значений
| Свойство | Тип | Описание |
|---|---|---|
invalid |
ScaleInvalidDataConfig | Объект выходных значений шкал для некорректных данных (null и NaN на непрерывной шкале). Ключи — каналы шкал. Значения — "zero-or-min" (использовать ноль, если он включён в шкалу, иначе минимум) или определение {value: ...}.Например, config.scale.invalid: {color: {value: "#aaa"}} окрашивает все некорректные значения цветом #aaa.Подробнее — в документации некорректных данных. |
Другие свойства
| Свойство | Тип | Описание |
|---|---|---|
clamp |
boolean, ExprRef | Если true, значения за пределами области данных ограничиваются минимумом или максимумом выходного диапазона. |
round |
boolean, ExprRef | Если true, округляет числовые выходные значения до целых, помогая привязать их к пиксельной сетке. Доступно только для шкал x, y и size. |
xReverse |
boolean, ExprRef | По умолчанию обращает шкалу X. Полезно для диаграмм с направлением справа налево. |
useUnaggregatedDomain |
boolean | Использует область исходных данных до агрегирования вместо агрегированных значений для шкалы агрегированной оси. Эквивалентно domain: "unaggregated" по умолчанию для агрегированных количественных полей.Работает только с функциями, возвращающими значения внутри области исходных данных: "mean", "average", "median", "q1", "q3", "min", "max". Для функций, способных выйти за эту область, например "count" и "sum", игнорируется.По умолчанию: false. |
zero |
boolean | Значение scale.zero по умолчанию для непрерывных шкал, кроме шкал X/Y столбчатых диаграмм и областей без явного диапазона и шкал размера.По умолчанию: true. |
config.range
Конфигурация config: {range: {...}} задаёт именованные диапазоны шкал. Ключи — имена диапазонов; значения — допустимые определения range, а для именованных цветовых диапазонов — определения схем Vega.
По умолчанию Vega-Lite через Vega предоставляет следующие именованные диапазоны:
| Свойство | Тип | Описание |
|---|---|---|
category |
RangeScheme, (Color)[] | Цветовая схема по умолчанию для категориальных данных. |
diverging |
RangeScheme, (Color)[] | Цветовая схема по умолчанию для расходящихся количественных цветовых переходов. |
heatmap |
RangeScheme, (Color)[] | Цветовая схема по умолчанию для количественных тепловых карт. |
ordinal |
RangeScheme, (Color)[] | Цветовая схема по умолчанию для порядковых данных. |
ramp |
RangeScheme, (Color)[] | Цветовая схема по умолчанию для последовательных количественных цветовых переходов. |
symbol |
(SymbolShape)[] | Массив имён или путей символов для палитры форм по умолчанию. |
Значения именованных диапазонов по умолчанию приведены в исходном файле vega-parser/src/config.js проекта Vega.