Тип данных поля

Если канал кодирования использует поле данных, определение канала должно описывать тип кодируемых данных на основе их уровня измерения в свойстве type. Vega-Lite поддерживает пять типов: "quantitative", "temporal", "ordinal", "nominal" и "geojson".

Свойство Тип Описание
type StandardType Тип измерения кодируемого поля или постоянного значения datum: "quantitative", "temporal", "ordinal", "nominal". Тип "geojson" используется для географических фигур.

Vega-Lite во многих случаях определяет тип автоматически. Однако для поля type обязателен, если: (1) поле не номинальное, а в кодировании не заданы aggregate (кроме argmin и argmax), bin, тип шкалы, собственный порядок sort или timeUnit; либо (2) для поля с bin или timeUnit нужна порядковая шкала.

Тип поля по умолчанию: "nominal", кроме следующих случаев.
"quantitative" — если заданы bin или агрегирование, кроме argmin/argmax; канал — latitude или longitude; либо указан количественный тип шкалы.
"temporal" — если задан timeUnit либо шкала time или utc.
"ordinal" — если задан собственный порядок сортировки, шкала ordinal, point или band, либо канал order.

Тип постоянного значения datum по умолчанию: "quantitative" для числа, "nominal" для строки, "temporal" для объекта даты и времени.

Примечания:
Тип описывает смысл данных, а не простой тип значения (число, строка и т. п.): числа могут быть количественными, порядковыми или номинальными.
Временное поле может содержать строку даты или времени — например, "2015-03-07 12:32:17", "17:01", "2015-03-16", "2015" — либо числовую временную метку, например 1552199579097.
С bin тип может быть "quantitative" для линейной интервальной шкалы или порядковым.
С timeUnit тип может быть "temporal" (по умолчанию, для временной шкалы) или порядковым.
При агрегировании тип относится к результату операции. Например, число различных категорий {"aggregate": "distinct", "field": "cat"} имеет тип "quantitative".
Вторичные каналы — например, x2, y2, xError, yError — не имеют type: он должен совпадать с типом основного канала X или Y.

Количественный тип — "quantitative"

Количественные данные выражают величину. Обычно это числа, например 7.3, 42.0 или 12.1.

Они могут представлять величины с осмысленным отношением значений либо значения на интервальной шкале. Ноль по умолчанию особенно уместен для данных шкалы отношений. Vega-Lite включает ноль в шкалы X, Y и размера для количественных полей. Для интервальных данных это поведение можно отключить, задав свойство zero шкалы равным false.

Временной тип — "temporal"

Временные данные обозначают дату или время: "2015-03-07 12:32:17", "17:01", "2015-03-16", "2015" или временную метку 1552199579097.

По умолчанию Vega-Lite считает поле этого типа непрерывным и использует временную шкалу time. Например, следующая диаграмма показывает среднее количество осадков по месяцам:

Порядковый тип — "ordinal"

Порядковые значения можно расположить по рангу: первое, второе и так далее. При этом разница между соседними значениями не имеет числового смысла. Например, размеры small, medium, large, extra-large упорядочены: medium больше small, а extra-large больше large. Но нельзя сравнить величину разницы между small и medium с разницей между medium и large или сказать, что large вдвое больше small.

Если естественный порядок значений не подходит, задайте собственный порядок sort:

Если канал содержит пользовательский порядок сортировки, Vega-Lite по умолчанию использует порядковый тип; поэтому явное "type": "ordinal" в этом случае можно опустить.

Временное поле как порядковое

Поле даты с timeUnit можно отобразить как дискретное, установив "type": "ordinal". Это полезно для единиц времени с небольшим числом значений, например месяцев:

Поле с интервалами как порядковое

Если для поля, разбитого на интервалы (bin), задать тип "ordinal", получится гистограмма с порядковой шкалой:

Номинальный тип — "nominal"

Номинальные данные различаются только названиями категорий. Примеры: пол, национальность, жанр музыки и имя. Даже если категории обозначены числами 1, 2 и 3, их нельзя сравнивать как величины: код категории 1 не означает значение меньше категории 2.

Географический тип — "geojson"

Данные GeoJSON представляют географические фигуры, заданные в формате GeoJSON.