Текст

// Спецификация одиночного представления
{
  "data": ... ,
  "mark": "text",
  "encoding": ... ,
  ...
}

Примитив text отображает каждую запись данных текстом вместо геометрического символа.

Содержание страницы

Свойства текста

// Спецификация одиночного представления
{
  ...,
  "mark": {
    "type": "text",
    ...
  },
  "encoding": ... ,
  ...
}

Помимо общих свойств примитивов, текст поддерживает:

Свойство Тип Описание
angle number, ExprRef Угол поворота текста в градусах.
align Align, ExprRef Горизонтальное выравнивание текста или интервальных примитивов (area, bar, image, rect, rule): "left", "right" или "center".

Примечание: ссылки на выражения для интервальных примитивов не поддерживаются.
baseline TextBaseline, ExprRef Для текста — вертикальная базовая линия: "alphabetic" (по умолчанию), "top", "middle", "bottom", "line-top", "line-bottom" или ссылка на выражение, возвращающее допустимое значение. Варианты line-top и line-bottom действуют подобно top и bottom, но рассчитываются относительно lineHeight, а не только fontSize.

Для интервальных примитивов — вертикальное выравнивание: "top", "middle" или "bottom".

Примечание: ссылки на выражения для интервальных примитивов не поддерживаются.
dir TextDirection, ExprRef Направление текста: "ltr" (слева направо) или "rtl" (справа налево). Определяет, с какой стороны текст обрезается при ограничении limit.

По умолчанию: "ltr".
dx number, ExprRef Горизонтальное смещение между текстовой подписью и её точкой привязки, в пикселях. Применяется после поворота свойством angle.
dy number, ExprRef Вертикальное смещение между текстовой подписью и её точкой привязки, в пикселях. Применяется после поворота свойством angle.
ellipsis string, ExprRef Строка многоточия для текста, обрезанного по ограничению limit.

По умолчанию: "…".
font string, ExprRef Гарнитура текста, например "Helvetica Neue".
fontSize number, ExprRef Размер шрифта в пикселях, неотрицательный.

По умолчанию: 11.
fontStyle FontStyle, ExprRef Начертание шрифта, например "italic".
fontWeight FontWeight, ExprRef Насыщенность шрифта: строка, например "bold" или "normal", либо число 100, 200, 300, …, 900, где "normal" соответствует 400, а "bold" — 700.
limit number, ExprRef Максимальная ширина текстового примитива в пикселях. Если ширина отрисованного текста превышает предел, текст автоматически обрезается.

По умолчанию: 0, то есть без ограничения.
lineHeight number, ExprRef Высота строки в пикселях (расстояние между последовательными строками) для многострочного текста.
radius number, ExprRef Для дуг — основной (внешний) радиус в пикселях, неотрицательный.

Для текста — радиальное смещение в полярных координатах относительно начала, определяемого свойствами x и y.

По умолчанию: min(plot_width, plot_height)/2.
text Text, ExprRef Текст-заполнитель, используемый, если канал text не задан.
theta number, ExprRef Для дуги — угловая длина в радианах, если theta2 не задано; иначе начальный угол дуги. Ноль направлен вверх («на север»), положительное направление — по часовой стрелке.

Для текста — угол в полярных координатах, в радианах.

Примеры

Тепловая карта с числами

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

Подписи других примитивов

Текст можно использовать как подпись столбцов или точек. Свойства dx и dy смещают её, а align и baseline задают выравнивание:

Текстовая диаграмма рассеяния

Сопоставление поля с каналом text задаёт текст примитива. Например, вместо точек можно построить цветную диаграмму рассеяния с текстом, показывающим первую букву места происхождения автомобиля:

Географические подписи

Сопоставление географических координат с каналами longitude и latitude соответствующей проекции размещает текст в точных позициях. В примере название каждой столицы штата США находится в позиции этой столицы:

Настройка текста

// Спецификация представления верхнего уровня
{
  ...,
  "config": {
    "text": ...,
    ...
  }
}

Свойство text объекта config верхнего уровня задаёт стандартные свойства всех текстовых примитивов. Каналы свойств примитива переопределяют эти значения.