UNPKG

vega

Version:

The Vega visualization grammar.

1,905 lines 420 kB
{ "$schema": "http://json-schema.org/draft-07/schema#", "title": "Vega Visualization Specification Language", "definitions": { "autosize": { "oneOf": [ { "enum": [ "pad", "fit", "fit-x", "fit-y", "none" ], "default": "pad" }, { "type": "object", "properties": { "type": { "enum": [ "pad", "fit", "fit-x", "fit-y", "none" ], "default": "pad" }, "resize": { "type": "boolean" }, "contains": { "enum": [ "content", "padding" ] } }, "required": [ "type" ], "additionalProperties": false }, { "$ref": "#/definitions/signalRef" } ] }, "axis": { "type": "object", "properties": { "orient": { "oneOf": [ { "enum": [ "top", "bottom", "left", "right" ] }, { "$ref": "#/definitions/signalRef" } ] }, "scale": { "type": "string" }, "format": { "oneOf": [ { "type": "string" }, { "type": "object", "properties": { "year": { "type": "string" }, "quarter": { "type": "string" }, "month": { "type": "string" }, "date": { "type": "string" }, "week": { "type": "string" }, "day": { "type": "string" }, "hours": { "type": "string" }, "minutes": { "type": "string" }, "seconds": { "type": "string" }, "milliseconds": { "type": "string" } }, "additionalProperties": false }, { "$ref": "#/definitions/signalRef" } ] }, "formatType": { "oneOf": [ { "enum": [ "number", "time", "utc" ] }, { "$ref": "#/definitions/signalRef" } ] }, "minExtent": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "maxExtent": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "offset": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "position": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "bandPosition": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "translate": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "values": { "$ref": "#/definitions/arrayOrSignal" }, "zindex": { "type": "number" }, "aria": { "type": "boolean" }, "description": { "type": "string" }, "title": { "$ref": "#/definitions/textOrSignal" }, "titlePadding": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "titleAlign": { "oneOf": [ { "enum": [ "left", "right", "center" ] }, { "$ref": "#/definitions/alignValue" } ] }, "titleAnchor": { "oneOf": [ { "enum": [ null, "start", "middle", "end" ] }, { "$ref": "#/definitions/anchorValue" } ] }, "titleAngle": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "titleX": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "titleY": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "titleBaseline": { "oneOf": [ { "enum": [ "top", "middle", "bottom", "alphabetic", "line-top", "line-bottom" ] }, { "$ref": "#/definitions/baselineValue" } ] }, "titleColor": { "oneOf": [ { "type": "null" }, { "type": "string" }, { "$ref": "#/definitions/colorValue" } ] }, "titleFont": { "oneOf": [ { "type": "string" }, { "$ref": "#/definitions/stringValue" } ] }, "titleFontSize": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "titleFontStyle": { "oneOf": [ { "type": "string" }, { "$ref": "#/definitions/stringValue" } ] }, "titleFontWeight": { "oneOf": [ { "enum": [ null, "normal", "bold", "lighter", "bolder", "100", "200", "300", "400", "500", "600", "700", "800", "900", 100, 200, 300, 400, 500, 600, 700, 800, 900 ] }, { "$ref": "#/definitions/fontWeightValue" } ] }, "titleLimit": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "titleLineHeight": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "titleOpacity": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "domain": { "type": "boolean" }, "domainCap": { "oneOf": [ { "type": "string" }, { "$ref": "#/definitions/stringValue" } ] }, "domainColor": { "oneOf": [ { "type": "null" }, { "type": "string" }, { "$ref": "#/definitions/colorValue" } ] }, "domainDash": { "oneOf": [ { "type": "array", "items": { "type": "number" } }, { "$ref": "#/definitions/arrayValue" } ] }, "domainDashOffset": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "domainOpacity": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "domainWidth": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "ticks": { "type": "boolean" }, "tickBand": { "$ref": "#/definitions/tickBand" }, "tickCap": { "oneOf": [ { "type": "string" }, { "$ref": "#/definitions/stringValue" } ] }, "tickColor": { "oneOf": [ { "type": "null" }, { "type": "string" }, { "$ref": "#/definitions/colorValue" } ] }, "tickDash": { "oneOf": [ { "type": "array", "items": { "type": "number" } }, { "$ref": "#/definitions/arrayValue" } ] }, "tickDashOffset": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "tickOffset": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "tickOpacity": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "tickRound": { "oneOf": [ { "type": "boolean" }, { "$ref": "#/definitions/booleanValue" } ] }, "tickSize": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "tickWidth": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "tickCount": { "$ref": "#/definitions/tickCount" }, "tickExtra": { "$ref": "#/definitions/booleanOrSignal" }, "tickMinStep": { "$ref": "#/definitions/numberOrSignal" }, "grid": { "type": "boolean" }, "gridScale": { "type": "string" }, "gridCap": { "oneOf": [ { "type": "string" }, { "$ref": "#/definitions/stringValue" } ] }, "gridColor": { "oneOf": [ { "type": "null" }, { "type": "string" }, { "$ref": "#/definitions/colorValue" } ] }, "gridDash": { "oneOf": [ { "type": "array", "items": { "type": "number" } }, { "$ref": "#/definitions/arrayValue" } ] }, "gridDashOffset": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "gridOpacity": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "gridWidth": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "labels": { "type": "boolean" }, "labelAlign": { "oneOf": [ { "enum": [ "left", "right", "center" ] }, { "$ref": "#/definitions/alignValue" } ] }, "labelBaseline": { "oneOf": [ { "enum": [ "top", "middle", "bottom", "alphabetic", "line-top", "line-bottom" ] }, { "$ref": "#/definitions/baselineValue" } ] }, "labelBound": { "oneOf": [ { "type": "boolean" }, { "type": "number" }, { "$ref": "#/definitions/signalRef" } ] }, "labelFlush": { "oneOf": [ { "type": "boolean" }, { "type": "number" }, { "$ref": "#/definitions/signalRef" } ] }, "labelFlushOffset": { "$ref": "#/definitions/numberOrSignal" }, "labelOverlap": { "$ref": "#/definitions/labelOverlap" }, "labelAngle": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "labelColor": { "oneOf": [ { "type": "null" }, { "type": "string" }, { "$ref": "#/definitions/colorValue" } ] }, "labelFont": { "oneOf": [ { "type": "string" }, { "$ref": "#/definitions/stringValue" } ] }, "labelFontSize": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "labelFontWeight": { "oneOf": [ { "enum": [ null, "normal", "bold", "lighter", "bolder", "100", "200", "300", "400", "500", "600", "700", "800", "900", 100, 200, 300, 400, 500, 600, 700, 800, 900 ] }, { "$ref": "#/definitions/fontWeightValue" } ] }, "labelFontStyle": { "oneOf": [ { "type": "string" }, { "$ref": "#/definitions/stringValue" } ] }, "labelLimit": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "labelLineHeight": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "labelOpacity": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "labelOffset": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "labelPadding": { "oneOf": [ { "type": "number" }, { "$ref": "#/definitions/numberValue" } ] }, "labelSeparation": { "$ref": "#/definitions/numberOrSignal" }, "encode": { "type": "object", "properties": { "axis": { "$ref": "#/definitions/guideEncode" }, "ticks": { "$ref": "#/definitions/guideEncode" }, "labels": { "$ref": "#/definitions/guideEncode" }, "title": { "$ref": "#/definitions/guideEncode" }, "grid": { "$ref": "#/definitions/guideEncode" }, "domain": { "$ref": "#/definitions/guideEncode" } }, "additionalProperties": false } }, "required": [ "orient", "scale" ], "additionalProperties": false }, "labelOverlap": { "oneOf": [ { "type": "boolean" }, { "enum": [ "parity", "greedy" ] }, { "$ref": "#/definitions/signalRef" } ] }, "tickBand": { "oneOf": [ { "enum": [ "center", "extent" ] }, { "$ref": "#/definitions/signalRef" } ] }, "tickCount": { "oneOf": [ { "type": "number" }, { "enum": [ "millisecond", "second", "minute", "hour", "day", "week", "month", "year" ] }, { "type": "object", "properties": { "interval": { "oneOf": [ { "enum": [ "millisecond", "second", "minute", "hour", "day", "week", "month", "year" ] }, { "$ref": "#/definitions/signalRef" } ] }, "step": { "$ref": "#/definitions/numberOrSignal" } }, "required": [ "interval" ], "additionalProperties": false }, { "$ref": "#/definitions/signalRef" } ] }, "background": { "$ref": "#/definitions/stringOrSignal" }, "bind": { "oneOf": [ { "type": "object", "properties": { "input": { "enum": [ "checkbox" ] }, "element": { "$ref": "#/definitions/element" }, "debounce": { "type": "number" }, "name": { "type": "string" } }, "required": [ "input" ], "additionalProperties": false }, { "type": "object", "properties": { "input": { "enum": [ "radio", "select" ] }, "element": { "$ref": "#/definitions/element" }, "options": { "type": "array" }, "labels": { "type": "array", "items": { "type": "string" } }, "debounce": { "type": "number" }, "name": { "type": "string" } }, "required": [ "input", "options" ], "additionalProperties": false }, { "type": "object", "properties": { "input": { "enum": [ "range" ] }, "element": { "$ref": "#/definitions/element" }, "min": { "type": "number" }, "max": { "type": "number" }, "step": { "type": "number" }, "debounce": { "type": "number" }, "name": { "type": "string" } }, "required": [ "input" ], "additionalProperties": false }, { "type": "object", "properties": { "input": { "not": { "enum": [ "checkbox", "radio", "range", "select" ] } }, "element": { "$ref": "#/definitions/element" }, "debounce": { "type": "number" }, "name": { "type": "string" } }, "required": [ "input" ], "additionalProperties": true }, { "type": "object", "properties": { "element": { "$ref": "#/definitions/element" }, "event": { "type": "string" }, "debounce": { "type": "number" } }, "required": [ "element" ], "additionalProperties": false } ] }, "element": { "type": "string" }, "data": { "oneOf": [ { "type": "object", "properties": { "name": { "type": "string" }, "transform": { "type": "array", "items": { "$ref": "#/definitions/transform" } }, "on": { "$ref": "#/definitions/onTrigger" } }, "required": [ "name" ], "additionalProperties": false }, { "type": "object", "properties": { "source": { "oneOf": [ { "type": "string" }, { "type": "array", "items": { "type": "string" }, "minItems": 1 } ] }, "name": { "type": "string" }, "transform": { "type": "array", "items": { "$ref": "#/definitions/transform" } }, "on": { "$ref": "#/definitions/onTrigger" } }, "required": [ "source", "name" ], "additionalProperties": false }, { "type": "object", "properties": { "url": { "$ref": "#/definitions/stringOrSignal" }, "format": { "oneOf": [ { "anyOf": [ { "type": "object", "properties": { "type": { "$ref": "#/definitions/stringOrSignal" }, "parse": { "oneOf": [ { "enum": [ "auto" ] }, { "type": "object", "properties": {}, "additionalProperties": { "oneOf": [ { "enum": [ "boolean", "number", "date", "string" ] }, { "type": "string", "pattern": "^(date|utc):.*$" } ] } }, { "$ref": "#/definitions/signalRef" } ] } } }, { "type": "object", "properties": { "type": { "enum": [ "json" ] }, "parse": { "oneOf": [ { "enum": [ "auto" ] }, { "type": "object", "properties": {}, "additionalProperties": { "oneOf": [ { "enum": [ "boolean", "number", "date", "string" ] }, { "type": "string", "pattern": "^(date|utc):.*$" } ] } }, { "$ref": "#/definitions/signalRef" } ] }, "property": { "$ref": "#/definitions/stringOrSignal" }, "copy": { "$ref": "#/definitions/booleanOrSignal" } }, "additionalProperties": false }, { "type": "object", "properties": { "type": { "enum": [ "csv", "tsv" ] }, "header": { "type": "array", "items": { "type": "string" } }, "parse": { "oneOf": [ { "enum": [ "auto" ] }, { "type": "object", "properties": {}, "additionalProperties": { "oneOf": [ { "enum": [ "boolean", "number", "date", "string" ] }, { "type": "string", "pattern": "^(date|utc):.*$" } ] } }, { "$ref": "#/definitions/signalRef" } ] } }, "required": [ "type" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "enum": [ "dsv" ] }, "delimiter": { "type": "string" }, "header": { "type": "array", "items": { "type": "string" } }, "parse": { "oneOf": [ { "enum": [ "auto" ] }, { "type": "object", "properties": {}, "additionalProperties": { "oneOf": [ { "enum": [ "boolean", "number", "date", "string" ] }, { "type": "string", "pattern": "^(date|utc):.*$" } ] } }, { "$ref": "#/definitions/signalRef" } ] } }, "required": [ "type", "delimiter" ], "additionalProperties": false }, { "oneOf": [ { "type": "object", "properties": { "type": { "enum": [ "topojson" ] }, "feature": { "$ref": "#/definitions/stringOrSignal" }, "property": { "$ref": "#/definitions/stringOrSignal" } }, "required": [ "type", "feature" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "enum": [ "topojson" ] }, "mesh": { "$ref": "#/definitions/stringOrSignal" }, "property": { "$ref": "#/definitions/stringOrSignal" }, "filter": { "enum": [ "interior", "exterior", null ] } }, "required": [ "type", "mesh" ], "additionalProperties": false } ] } ] }, { "$ref": "#/definitions/signalRef" } ] }, "async": { "$ref": "#/definitions/booleanOrSignal" }, "name": { "type": "string" }, "transform": { "type": "array", "items": { "$ref": "#/definitions/transform" } }, "on": { "$ref": "#/definitions/onTrigger" } }, "required": [ "url", "name" ], "additionalProperties": false }, { "type": "object", "properties": { "values": { "oneOf": [ {}, { "$ref": "#/definitions/signalRef" } ] }, "format": { "oneOf": [ { "anyOf": [ { "type": "object", "properties": { "type": { "$ref": "#/definitions/stringOrSignal" }, "parse": { "oneOf": [ { "enum": [ "auto" ] }, { "type": "object", "properties": {}, "additionalProperties": { "oneOf": [ { "enum": [ "boolean", "number", "date", "string" ] }, { "type": "string", "pattern": "^(date|utc):.*$" } ] } }, { "$ref": "#/definitions/signalRef" } ] } } }, { "type": "object", "properties": { "type": { "enum": [ "json" ] }, "parse": { "oneOf": [ { "enum": [ "auto" ] }, { "type": "object", "properties": {}, "additionalProperties": { "oneOf": [ { "enum": [ "boolean", "number", "date", "string" ] }, { "type": "string", "pattern": "^(date|utc):.*$" } ] } }, { "$ref": "#/definitions/signalRef" } ] }, "property": { "$ref": "#/definitions/stringOrSignal" }, "copy": { "$ref": "#/definitions/booleanOrSignal" } }, "additionalProperties": false }, { "type": "object", "properties": { "type": { "enum": [ "csv", "tsv" ] }, "header": { "type": "array", "items": { "type": "string" } }, "parse": { "oneOf": [ { "enum": [ "auto" ] }, { "type": "object", "properties": {}, "additionalProperties": { "oneOf": [ { "enum": [ "boolean", "number", "date", "string" ] }, { "type": "string", "pattern": "^(date|utc):.*$" } ] } }, { "$ref": "#/definitions/signalRef" } ] } }, "required": [ "type" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "enum": [ "dsv" ] }, "delimiter": { "type": "string" }, "header": { "type": "array", "items": { "type": "string" } }, "parse": { "oneOf": [ { "enum": [ "auto" ] }, { "type": "object", "properties": {}, "additionalProperties": { "oneOf": [ { "enum": [ "boolean", "number", "date", "string" ] }, { "type": "string", "pattern": "^(date|utc):.*$" } ] } }, { "$ref": "#/definitions/signalRef" } ] } }, "required": [ "type", "delimiter" ], "additionalProperties": false }, { "oneOf": [ { "type": "object", "properties": { "type": { "enum": [ "topojson" ] }, "feature": { "$ref": "#/definitions/stringOrSignal" }, "property": { "$ref": "#/definitions/stringOrSignal" } }, "required": [ "type", "feature" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "enum": [ "topojson" ] }, "mesh": { "$ref": "#/definitions/stringOrSignal" }, "property": { "$ref": "#/definitions/stringOrSignal" }, "filter": { "enum": [ "interior", "exterior", null ] } }, "required": [ "type", "mesh" ], "additionalProperties": false } ] } ] }, { "$ref": "#/definitions/signalRef" } ] }, "async": { "$ref": "#/definitions/booleanOrSignal" }, "name": { "type": "string" }, "transform": { "type": "array", "items": { "$ref": "#/definitions/transform" } }, "on": { "$ref": "#/definitions/onTrigger" } }, "required": [ "values", "name" ], "additionalProperties": false } ] }, "paramField": { "type": "object", "properties": { "field": { "type": "string" }, "as": { "type": "string" } }, "required": [ "field" ], "additionalProperties": false }, "rule": { "type": "object", "properties": { "test": { "type": "string" } } }, "encodeEntry": { "type": "object", "properties": { "x": { "$ref": "#/definitions/numberValue" }, "x2": { "$ref": "#/definitions/numberValue" }, "xc": { "$ref": "#/definitions/numberValue" }, "width": { "$ref": "#/definitions/numberValue" }, "y": { "$ref": "#/definitions/numberValue" }, "y2": { "$ref": "#/definitions/numberValue" }, "yc": { "$ref": "#/definitions/numberValue" }, "height": { "$ref": "#/definitions/numberValue" }, "opacity": { "$ref": "#/definitions/numberValue" }, "fill": { "$ref": "#/definitions/colorValue" }, "fillOpacity": { "$ref": "#/definitions/numberValue" }, "stroke": { "$ref": "#/definitions/colorValue" }, "strokeOpacity": { "$ref": "#/definitions/numberValue" }, "strokeWidth": { "$ref": "#/definitions/numberValue" }, "strokeCap": { "$ref": "#/definitions/strokeCapValue" }, "strokeDash": { "$ref": "#/definitions/arrayValue" }, "strokeDashOffset": { "$ref": "#/definitions/numberValue" }, "strokeJoin": { "$ref": "#/definitions/strokeJoinValue" }, "strokeMiterLimit": { "$ref": "#/definitions/numberValue" }, "blend": { "$ref": "#/definitions/blendValue" }, "cursor": { "$ref": "#/definitions/stringValue" }, "tooltip": { "$ref": "#/definitions/anyValue" }, "zindex": { "$ref": "#/definitions/numberValue" }, "description": { "$ref": "#/definitions/stringValue" }, "aria": { "$ref": "#/definitions/booleanValue" }, "ariaRole": { "$ref": "#/definitions/stringValue" }, "ariaRoleDescription": { "$ref": "#/definitions/stringValue" }, "clip": { "$ref": "#/definitions/booleanValue" }, "strokeForeground": { "$ref": "#/definitions/booleanValue" }, "strokeOffset": { "$ref": "#/definitions/numberValue" }, "cornerRadius": { "$ref": "#/definitions/numberValue" }, "cornerRadiusTopLeft": { "$ref": "#/definitions/numberValue" }, "cornerRadiusTopRight": { "$ref": "#/definitions/numberValue" }, "cornerRadiusBottomRight": { "$ref": "#/definitions/numberValue" }, "cornerRadiusBottomLeft": { "$ref": "#/definitions/numberValue" }, "angle": { "$ref": "#/definitions/numberValue" }, "size": { "$ref": "#/definitions/numberValue" }, "shape": { "$ref": "#/definitions/stringValue" }, "path": { "$ref": "#/definitions/stringValue" }, "scaleX": { "$ref