Vega-Lite и TypeScript

Vega-Lite написан на TypeScript. Типы, предоставляемые библиотекой, позволяют проверять спецификации и обращения к API компилятора.

Основная функция Vega-Lite — compile. Библиотека экспортирует её напрямую. Первый аргумент функции — спецификация Vega-Lite типа TopLevelSpec. Этот тип также экспортируется напрямую и позволяет проверять вашу спецификацию. Кроме того, Vega-Lite экспортирует тип Config для конфигурации Vega-Lite.

Ниже приведён небольшой пример использования compile и типов, экспортируемых Vega-Lite:

import {Config, TopLevelSpec, compile} from 'vega-lite';

const vegaLiteSpec: TopLevelSpec = {
  $schema: 'https://vega.github.io/schema/vega-lite/v6.json',
  data: {
    values: [
      {a: 'A', b: 28},
      {a: 'B', b: 55},
      {a: 'C', b: 43},
      {a: 'D', b: 91},
      {a: 'E', b: 81},
      {a: 'F', b: 53},
      {a: 'G', b: 19},
      {a: 'H', b: 87},
      {a: 'I', b: 52},
    ],
  },
  mark: 'bar',
  encoding: {
    x: {field: 'a', type: 'nominal', axis: {labelAngle: 0}},
    y: {field: 'b', type: 'quantitative'},
  },
};

const config: Config = {
  bar: {
    color: 'firebrick',
  },
};

const vegaSpec = compile(vegaLiteSpec, {config}).spec;