Created
February 9, 2024 03:57
-
-
Save nicolaskruchten/72cecdf54ac72d0a155c6755844c83dd to your computer and use it in GitHub Desktop.
Vega spec from Thu Feb 08 2024
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| { | |
| "$schema": "https://vega.github.io/schema/vega/v5.json", | |
| "autosize": {"type": "fit", "contains": "padding"}, | |
| "background": "white", | |
| "padding": 5, | |
| "style": "cell", | |
| "data": [ | |
| {"name": "interval_intervalselection_0_store"}, | |
| {"name": "click_pointselection_0_store"}, | |
| {"name": "legend_pointselection_0_store"}, | |
| {"name": "legend_pointhover_0_store"}, | |
| { | |
| "name": "dff", | |
| "values": [ | |
| {"period.column": "apple", "numeric_column": 1}, | |
| {"period.column": "banana", "numeric_column": 2}, | |
| {"period.column": "organge", "numeric_column": 3} | |
| ] | |
| }, | |
| { | |
| "name": "data_0", | |
| "source": "dff", | |
| "transform": [ | |
| { | |
| "type": "aggregate", | |
| "groupby": ["period\\.column"], | |
| "ops": ["sum"], | |
| "fields": ["numeric_column"], | |
| "as": ["sum_numeric_column"] | |
| }, | |
| { | |
| "type": "filter", | |
| "expr": "isValid(datum[\"sum_numeric_column\"]) && isFinite(+datum[\"sum_numeric_column\"])" | |
| } | |
| ] | |
| } | |
| ], | |
| "signals": [ | |
| { | |
| "name": "width", | |
| "init": "isFinite(containerSize()[0]) ? containerSize()[0] : 200", | |
| "on": [ | |
| { | |
| "update": "isFinite(containerSize()[0]) ? containerSize()[0] : 200", | |
| "events": "window:resize" | |
| } | |
| ] | |
| }, | |
| { | |
| "name": "height", | |
| "init": "isFinite(containerSize()[1]) ? containerSize()[1] : 200", | |
| "on": [ | |
| { | |
| "update": "isFinite(containerSize()[1]) ? containerSize()[1] : 200", | |
| "events": "window:resize" | |
| } | |
| ] | |
| }, | |
| { | |
| "name": "unit", | |
| "value": {}, | |
| "on": [ | |
| {"events": "pointermove", "update": "isTuple(group()) ? group() : unit"} | |
| ] | |
| }, | |
| { | |
| "name": "legend_pointhover_0_period__column_legend", | |
| "value": null, | |
| "on": [ | |
| { | |
| "events": [ | |
| { | |
| "source": "view", | |
| "type": "click", | |
| "markname": "period__column_legend_symbols" | |
| }, | |
| { | |
| "source": "view", | |
| "type": "click", | |
| "markname": "period__column_legend_labels" | |
| }, | |
| { | |
| "source": "view", | |
| "type": "click", | |
| "markname": "period__column_legend_entries" | |
| } | |
| ], | |
| "update": "isDefined(datum.value) ? datum.value : item().items[0].items[0].datum.value", | |
| "force": true | |
| }, | |
| { | |
| "events": [{"source": "view", "type": "click"}], | |
| "update": "!event.item || !datum ? null : legend_pointhover_0_period__column_legend", | |
| "force": true | |
| } | |
| ] | |
| }, | |
| { | |
| "name": "legend_pointselection_0_period__column_legend", | |
| "value": null, | |
| "on": [ | |
| { | |
| "events": [ | |
| { | |
| "source": "view", | |
| "type": "click", | |
| "markname": "period__column_legend_symbols" | |
| }, | |
| { | |
| "source": "view", | |
| "type": "click", | |
| "markname": "period__column_legend_labels" | |
| }, | |
| { | |
| "source": "view", | |
| "type": "click", | |
| "markname": "period__column_legend_entries" | |
| } | |
| ], | |
| "update": "isDefined(datum.value) ? datum.value : item().items[0].items[0].datum.value", | |
| "force": true | |
| }, | |
| { | |
| "events": [{"source": "view", "type": "click"}], | |
| "update": "!event.item || !datum ? null : legend_pointselection_0_period__column_legend", | |
| "force": true | |
| } | |
| ] | |
| }, | |
| { | |
| "name": "interval_intervalselection_0", | |
| "update": "vlSelectionResolve(\"interval_intervalselection_0_store\", \"union\")" | |
| }, | |
| { | |
| "name": "click_pointselection_0", | |
| "update": "vlSelectionResolve(\"click_pointselection_0_store\", \"union\", true, true)" | |
| }, | |
| { | |
| "name": "legend_pointselection_0", | |
| "update": "vlSelectionResolve(\"legend_pointselection_0_store\", \"union\", true, true)" | |
| }, | |
| { | |
| "name": "legend_pointhover_0", | |
| "update": "vlSelectionResolve(\"legend_pointhover_0_store\", \"union\", true, true)" | |
| }, | |
| { | |
| "name": "interval_intervalselection_0_x", | |
| "value": [], | |
| "on": [ | |
| { | |
| "events": { | |
| "source": "scope", | |
| "type": "pointerdown", | |
| "filter": [ | |
| "!event.item || event.item.mark.name !== \"interval_intervalselection_0_brush\"" | |
| ] | |
| }, | |
| "update": "[x(unit), x(unit)]" | |
| }, | |
| { | |
| "events": { | |
| "source": "window", | |
| "type": "pointermove", | |
| "consume": true, | |
| "between": [ | |
| { | |
| "source": "scope", | |
| "type": "pointerdown", | |
| "filter": [ | |
| "!event.item || event.item.mark.name !== \"interval_intervalselection_0_brush\"" | |
| ] | |
| }, | |
| {"source": "window", "type": "pointerup"} | |
| ] | |
| }, | |
| "update": "[interval_intervalselection_0_x[0], clamp(x(unit), 0, width)]" | |
| }, | |
| { | |
| "events": {"signal": "interval_intervalselection_0_scale_trigger"}, | |
| "update": "[0, 0]" | |
| }, | |
| { | |
| "events": [{"source": "view", "type": "dblclick"}], | |
| "update": "[0, 0]" | |
| }, | |
| { | |
| "events": {"signal": "interval_intervalselection_0_translate_delta"}, | |
| "update": "clampRange(panLinear(interval_intervalselection_0_translate_anchor.extent_x, interval_intervalselection_0_translate_delta.x / span(interval_intervalselection_0_translate_anchor.extent_x)), 0, width)" | |
| } | |
| ] | |
| }, | |
| { | |
| "name": "interval_intervalselection_0_period__column", | |
| "on": [ | |
| { | |
| "events": {"signal": "interval_intervalselection_0_x"}, | |
| "update": "interval_intervalselection_0_x[0] === interval_intervalselection_0_x[1] ? null : invert(\"x\", interval_intervalselection_0_x)" | |
| } | |
| ] | |
| }, | |
| { | |
| "name": "interval_intervalselection_0_scale_trigger", | |
| "value": {}, | |
| "on": [ | |
| { | |
| "events": [{"scale": "x"}], | |
| "update": "(!isArray(interval_intervalselection_0_period__column) || (invert(\"x\", interval_intervalselection_0_x)[0] === interval_intervalselection_0_period__column[0] && invert(\"x\", interval_intervalselection_0_x)[1] === interval_intervalselection_0_period__column[1])) ? interval_intervalselection_0_scale_trigger : {}" | |
| } | |
| ] | |
| }, | |
| { | |
| "name": "interval_intervalselection_0_tuple", | |
| "on": [ | |
| { | |
| "events": [{"signal": "interval_intervalselection_0_period__column"}], | |
| "update": "interval_intervalselection_0_period__column ? {unit: \"layer_0_layer_0_layer_0\", fields: interval_intervalselection_0_tuple_fields, values: [interval_intervalselection_0_period__column]} : null" | |
| } | |
| ] | |
| }, | |
| { | |
| "name": "interval_intervalselection_0_tuple_fields", | |
| "value": [{"field": "period\\.column", "channel": "x", "type": "E"}] | |
| }, | |
| { | |
| "name": "interval_intervalselection_0_translate_anchor", | |
| "value": {}, | |
| "on": [ | |
| { | |
| "events": [ | |
| { | |
| "source": "scope", | |
| "type": "pointerdown", | |
| "markname": "interval_intervalselection_0_brush" | |
| } | |
| ], | |
| "update": "{x: x(unit), y: y(unit), extent_x: slice(interval_intervalselection_0_x)}" | |
| } | |
| ] | |
| }, | |
| { | |
| "name": "interval_intervalselection_0_translate_delta", | |
| "value": {}, | |
| "on": [ | |
| { | |
| "events": [ | |
| { | |
| "source": "window", | |
| "type": "pointermove", | |
| "consume": true, | |
| "between": [ | |
| { | |
| "source": "scope", | |
| "type": "pointerdown", | |
| "markname": "interval_intervalselection_0_brush" | |
| }, | |
| {"source": "window", "type": "pointerup"} | |
| ] | |
| } | |
| ], | |
| "update": "{x: interval_intervalselection_0_translate_anchor.x - x(unit), y: interval_intervalselection_0_translate_anchor.y - y(unit)}" | |
| } | |
| ] | |
| }, | |
| { | |
| "name": "interval_intervalselection_0_modify", | |
| "on": [ | |
| { | |
| "events": {"signal": "interval_intervalselection_0_tuple"}, | |
| "update": "modify(\"interval_intervalselection_0_store\", interval_intervalselection_0_tuple, true)" | |
| } | |
| ] | |
| }, | |
| { | |
| "name": "click_pointselection_0_tuple", | |
| "on": [ | |
| { | |
| "events": [{"source": "scope", "type": "click"}], | |
| "update": "datum && item().mark.marktype !== 'group' && indexof(item().mark.role, 'legend') < 0 && indexof(item().mark.name, 'interval_intervalselection_0_brush') < 0 ? {unit: \"layer_0_layer_0_layer_0\", fields: click_pointselection_0_tuple_fields, values: [(item().isVoronoi ? datum.datum : datum)[\"period\\\\.column\"]]} : null", | |
| "force": true | |
| }, | |
| {"events": [{"source": "view", "type": "dblclick"}], "update": "null"} | |
| ] | |
| }, | |
| { | |
| "name": "click_pointselection_0_tuple_fields", | |
| "value": [{"field": "period\\.column", "channel": "x", "type": "E"}] | |
| }, | |
| { | |
| "name": "click_pointselection_0_toggle", | |
| "value": false, | |
| "on": [ | |
| {"events": [{"source": "scope", "type": "click"}], "update": "false"}, | |
| {"events": [{"source": "view", "type": "dblclick"}], "update": "false"} | |
| ] | |
| }, | |
| { | |
| "name": "click_pointselection_0_modify", | |
| "on": [ | |
| { | |
| "events": {"signal": "click_pointselection_0_tuple"}, | |
| "update": "modify(\"click_pointselection_0_store\", click_pointselection_0_toggle ? null : click_pointselection_0_tuple, click_pointselection_0_toggle ? null : true, click_pointselection_0_toggle ? click_pointselection_0_tuple : null)" | |
| } | |
| ] | |
| }, | |
| { | |
| "name": "legend_pointselection_0_tuple", | |
| "update": "legend_pointselection_0_period__column_legend !== null ? {fields: legend_pointselection_0_tuple_fields, values: [legend_pointselection_0_period__column_legend]} : null" | |
| }, | |
| { | |
| "name": "legend_pointselection_0_tuple_fields", | |
| "value": [{"field": "period\\.column", "channel": "color", "type": "E"}] | |
| }, | |
| { | |
| "name": "legend_pointselection_0_toggle", | |
| "value": false, | |
| "on": [ | |
| { | |
| "events": {"merge": [{"source": "view", "type": "click"}]}, | |
| "update": "event.shiftKey" | |
| } | |
| ] | |
| }, | |
| { | |
| "name": "legend_pointselection_0_modify", | |
| "on": [ | |
| { | |
| "events": {"signal": "legend_pointselection_0_tuple"}, | |
| "update": "modify(\"legend_pointselection_0_store\", legend_pointselection_0_toggle ? null : legend_pointselection_0_tuple, legend_pointselection_0_toggle ? null : true, legend_pointselection_0_toggle ? legend_pointselection_0_tuple : null)" | |
| } | |
| ] | |
| }, | |
| { | |
| "name": "legend_pointhover_0_tuple", | |
| "update": "legend_pointhover_0_period__column_legend !== null ? {fields: legend_pointhover_0_tuple_fields, values: [legend_pointhover_0_period__column_legend]} : null" | |
| }, | |
| { | |
| "name": "legend_pointhover_0_tuple_fields", | |
| "value": [{"field": "period\\.column", "channel": "color", "type": "E"}] | |
| }, | |
| { | |
| "name": "legend_pointhover_0_toggle", | |
| "value": false, | |
| "on": [ | |
| { | |
| "events": {"merge": [{"source": "view", "type": "click"}]}, | |
| "update": "event.shiftKey" | |
| } | |
| ] | |
| }, | |
| { | |
| "name": "legend_pointhover_0_modify", | |
| "on": [ | |
| { | |
| "events": {"signal": "legend_pointhover_0_tuple"}, | |
| "update": "modify(\"legend_pointhover_0_store\", legend_pointhover_0_toggle ? null : legend_pointhover_0_tuple, legend_pointhover_0_toggle ? null : true, legend_pointhover_0_toggle ? legend_pointhover_0_tuple : null)" | |
| } | |
| ] | |
| }, | |
| { | |
| "name": "cursor", | |
| "value": "default", | |
| "on": [ | |
| { | |
| "events": "mousemove", | |
| "update": "if(isDefined((group()).bounds), if(item().mark.marktype != 'group', 'default', 'crosshair'), 'default')" | |
| } | |
| ] | |
| } | |
| ], | |
| "marks": [ | |
| { | |
| "name": "interval_intervalselection_0_brush_bg", | |
| "type": "rect", | |
| "clip": true, | |
| "encode": { | |
| "enter": {"fill": {"value": "#669EFF"}, "fillOpacity": {"value": 0.07}}, | |
| "update": { | |
| "x": [ | |
| { | |
| "test": "data(\"interval_intervalselection_0_store\").length && data(\"interval_intervalselection_0_store\")[0].unit === \"layer_0_layer_0_layer_0\"", | |
| "signal": "interval_intervalselection_0_x[0]" | |
| }, | |
| {"value": 0} | |
| ], | |
| "y": [ | |
| { | |
| "test": "data(\"interval_intervalselection_0_store\").length && data(\"interval_intervalselection_0_store\")[0].unit === \"layer_0_layer_0_layer_0\"", | |
| "value": 0 | |
| }, | |
| {"value": 0} | |
| ], | |
| "x2": [ | |
| { | |
| "test": "data(\"interval_intervalselection_0_store\").length && data(\"interval_intervalselection_0_store\")[0].unit === \"layer_0_layer_0_layer_0\"", | |
| "signal": "interval_intervalselection_0_x[1]" | |
| }, | |
| {"value": 0} | |
| ], | |
| "y2": [ | |
| { | |
| "test": "data(\"interval_intervalselection_0_store\").length && data(\"interval_intervalselection_0_store\")[0].unit === \"layer_0_layer_0_layer_0\"", | |
| "field": {"group": "height"} | |
| }, | |
| {"value": 0} | |
| ] | |
| } | |
| } | |
| }, | |
| { | |
| "name": "layer_0_layer_0_layer_0_marks", | |
| "type": "rect", | |
| "clip": true, | |
| "style": ["bar"], | |
| "interactive": true, | |
| "from": {"data": "data_0"}, | |
| "encode": { | |
| "update": { | |
| "cursor": {"value": "pointer"}, | |
| "fill": { | |
| "scale": "layer_0_layer_0_color", | |
| "field": "period\\.column" | |
| }, | |
| "opacity": [ | |
| { | |
| "test": "!((!length(data(\"interval_intervalselection_0_store\")) || vlSelectionTest(\"interval_intervalselection_0_store\", datum)) && (!length(data(\"click_pointselection_0_store\")) || vlSelectionTest(\"click_pointselection_0_store\", datum)) && ((length(data(\"legend_pointselection_0_store\")) && vlSelectionTest(\"legend_pointselection_0_store\", datum)) || (!length(data(\"legend_pointhover_0_store\")) || vlSelectionTest(\"legend_pointhover_0_store\", datum))))", | |
| "value": 0.3 | |
| }, | |
| {"value": 1} | |
| ], | |
| "tooltip": { | |
| "signal": "{\"period.column\": isValid(datum[\"period.column\"]) ? datum[\"period.column\"] : \"\"+datum[\"period.column\"], \"Sum of numeric_column\": datum[\"sum_numeric_column\"]}" | |
| }, | |
| "ariaRoleDescription": {"value": "bar"}, | |
| "description": { | |
| "signal": "\"period.column: \" + (isValid(datum[\"period.column\"]) ? datum[\"period.column\"] : \"\"+datum[\"period.column\"]) + \"; Sum of numeric_column: \" + (datum[\"sum_numeric_column\"])" | |
| }, | |
| "x": {"scale": "x", "field": "period\\.column"}, | |
| "width": {"signal": "max(0.25, bandwidth('x'))"}, | |
| "y": {"scale": "y", "field": "sum_numeric_column"}, | |
| "y2": {"scale": "y", "value": 0} | |
| } | |
| } | |
| }, | |
| { | |
| "name": "interval_intervalselection_0_brush", | |
| "type": "rect", | |
| "clip": true, | |
| "encode": { | |
| "enter": {"fill": {"value": "transparent"}}, | |
| "update": { | |
| "x": [ | |
| { | |
| "test": "data(\"interval_intervalselection_0_store\").length && data(\"interval_intervalselection_0_store\")[0].unit === \"layer_0_layer_0_layer_0\"", | |
| "signal": "interval_intervalselection_0_x[0]" | |
| }, | |
| {"value": 0} | |
| ], | |
| "y": [ | |
| { | |
| "test": "data(\"interval_intervalselection_0_store\").length && data(\"interval_intervalselection_0_store\")[0].unit === \"layer_0_layer_0_layer_0\"", | |
| "value": 0 | |
| }, | |
| {"value": 0} | |
| ], | |
| "x2": [ | |
| { | |
| "test": "data(\"interval_intervalselection_0_store\").length && data(\"interval_intervalselection_0_store\")[0].unit === \"layer_0_layer_0_layer_0\"", | |
| "signal": "interval_intervalselection_0_x[1]" | |
| }, | |
| {"value": 0} | |
| ], | |
| "y2": [ | |
| { | |
| "test": "data(\"interval_intervalselection_0_store\").length && data(\"interval_intervalselection_0_store\")[0].unit === \"layer_0_layer_0_layer_0\"", | |
| "field": {"group": "height"} | |
| }, | |
| {"value": 0} | |
| ], | |
| "stroke": [ | |
| { | |
| "test": "interval_intervalselection_0_x[0] !== interval_intervalselection_0_x[1]", | |
| "value": "#669EFF" | |
| }, | |
| {"value": null} | |
| ], | |
| "strokeOpacity": [ | |
| { | |
| "test": "interval_intervalselection_0_x[0] !== interval_intervalselection_0_x[1]", | |
| "value": 0.4 | |
| }, | |
| {"value": null} | |
| ] | |
| } | |
| } | |
| } | |
| ], | |
| "scales": [ | |
| { | |
| "name": "x", | |
| "type": "band", | |
| "domain": { | |
| "data": "dff", | |
| "field": "period\\.column", | |
| "sort": {"op": "sum", "field": "numeric_column", "order": "descending"} | |
| }, | |
| "range": [0, {"signal": "width"}], | |
| "paddingInner": 0.1, | |
| "paddingOuter": 0.05 | |
| }, | |
| { | |
| "name": "y", | |
| "type": "linear", | |
| "domain": {"data": "data_0", "field": "sum_numeric_column"}, | |
| "range": [{"signal": "height"}, 0], | |
| "nice": true, | |
| "zero": true | |
| }, | |
| { | |
| "name": "layer_0_layer_0_color", | |
| "type": "ordinal", | |
| "domain": {"data": "data_0", "field": "period\\.column", "sort": true}, | |
| "range": [ | |
| "#4C78A8", | |
| "#F58518", | |
| "#E45756", | |
| "#72B7B2", | |
| "#54A24B", | |
| "#EECA3B", | |
| "#B279A2", | |
| "#FF9DA6", | |
| "#9D755D", | |
| "#BAB0AC" | |
| ] | |
| } | |
| ], | |
| "axes": [ | |
| { | |
| "scale": "x", | |
| "orient": "bottom", | |
| "grid": true, | |
| "gridScale": "y", | |
| "domain": false, | |
| "labels": false, | |
| "aria": false, | |
| "maxExtent": 0, | |
| "minExtent": 0, | |
| "ticks": false, | |
| "zindex": 0 | |
| }, | |
| { | |
| "scale": "y", | |
| "orient": "left", | |
| "grid": true, | |
| "gridScale": "x", | |
| "tickCount": {"signal": "ceil(height/40)"}, | |
| "domain": false, | |
| "labels": false, | |
| "aria": false, | |
| "maxExtent": 0, | |
| "minExtent": 0, | |
| "ticks": false, | |
| "zindex": 0 | |
| }, | |
| { | |
| "scale": "x", | |
| "orient": "bottom", | |
| "grid": false, | |
| "title": "period.column", | |
| "labelFlush": false, | |
| "labelOverlap": "greedy", | |
| "labels": true, | |
| "ticks": true, | |
| "labelAlign": "right", | |
| "labelAngle": 270, | |
| "labelBaseline": "middle", | |
| "zindex": 0 | |
| }, | |
| { | |
| "scale": "y", | |
| "orient": "left", | |
| "grid": false, | |
| "title": "Sum of numeric_column", | |
| "labelFlush": false, | |
| "labels": true, | |
| "ticks": true, | |
| "labelOverlap": true, | |
| "tickCount": {"signal": "ceil(height/40)"}, | |
| "encode": {"labels": {"update": {"text": {"signal": "datum.value"}}}}, | |
| "zindex": 0 | |
| } | |
| ], | |
| "legends": [ | |
| { | |
| "symbolOpacity": 1, | |
| "title": "period.column", | |
| "fill": "layer_0_layer_0_color", | |
| "symbolType": "square", | |
| "encode": { | |
| "labels": { | |
| "name": "period__column_legend_labels", | |
| "interactive": true, | |
| "update": { | |
| "opacity": [ | |
| { | |
| "test": "(!length(data(\"legend_pointselection_0_store\")) || (legend_pointselection_0[\"period\\\\.column\"] && indexof(legend_pointselection_0[\"period\\\\.column\"], datum.value) >= 0)) || (!length(data(\"legend_pointhover_0_store\")) || (legend_pointhover_0[\"period\\\\.column\"] && indexof(legend_pointhover_0[\"period\\\\.column\"], datum.value) >= 0))", | |
| "value": 1 | |
| }, | |
| {"value": 0.35} | |
| ] | |
| } | |
| }, | |
| "symbols": { | |
| "name": "period__column_legend_symbols", | |
| "interactive": true, | |
| "update": { | |
| "opacity": [ | |
| { | |
| "test": "(!length(data(\"legend_pointselection_0_store\")) || (legend_pointselection_0[\"period\\\\.column\"] && indexof(legend_pointselection_0[\"period\\\\.column\"], datum.value) >= 0)) || (!length(data(\"legend_pointhover_0_store\")) || (legend_pointhover_0[\"period\\\\.column\"] && indexof(legend_pointhover_0[\"period\\\\.column\"], datum.value) >= 0))", | |
| "value": 1 | |
| }, | |
| {"value": 0.35} | |
| ] | |
| } | |
| }, | |
| "entries": { | |
| "name": "period__column_legend_entries", | |
| "interactive": true, | |
| "update": {"fill": {"value": "transparent"}} | |
| } | |
| } | |
| } | |
| ], | |
| "config": { | |
| "customFormatTypes": true, | |
| "tooltipFormat": {"timeFormat": "%b %d, %Y %H:%M:%S"}, | |
| "legend": {"orient": "right"}, | |
| "style": { | |
| "guide-label": { | |
| "font": "\"IBM Plex Sans\", system-ui, -apple-system, BlinkMacSystemFont, sans-serif" | |
| }, | |
| "guide-title": { | |
| "font": "\"IBM Plex Sans\", system-ui, -apple-system, BlinkMacSystemFont, sans-serif" | |
| }, | |
| "group-title": { | |
| "font": "\"IBM Plex Sans\", system-ui, -apple-system, BlinkMacSystemFont, sans-serif" | |
| }, | |
| "group-subtitle": { | |
| "font": "\"IBM Plex Sans\", system-ui, -apple-system, BlinkMacSystemFont, sans-serif" | |
| }, | |
| "text": { | |
| "font": "\"IBM Plex Sans\", system-ui, -apple-system, BlinkMacSystemFont, sans-serif" | |
| } | |
| } | |
| }, | |
| "usermeta": { | |
| "warnings": [], | |
| "selectionConfigs": { | |
| "interval_intervalselection_0": { | |
| "type": "interval", | |
| "datetimeFields": [], | |
| "derived": [] | |
| }, | |
| "click_pointselection_0": { | |
| "type": "point", | |
| "datetimeFields": [], | |
| "derived": [] | |
| }, | |
| "legend_pointselection_0": { | |
| "type": "point", | |
| "datetimeFields": [], | |
| "derived": [] | |
| } | |
| } | |
| } | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment