Created
February 14, 2024 00:01
-
-
Save nicolaskruchten/0cb32324c7a114a66bd51ca2bcfa4bab to your computer and use it in GitHub Desktop.
Vega spec from Tue Feb 13 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", | |
"data": [ | |
{"name": "interval_intervalselection_0_store"}, | |
{"name": "click_pointselection_0_store"}, | |
{"name": "legend_pointselection_0_store"}, | |
{"name": "legend_pointhover_0_store"}, | |
{"name": "dataframe_2"}, | |
{"name": "data_0"}, | |
{ | |
"name": "column_domain", | |
"values": [ | |
{"year_date": 946702800000, "count": 48}, | |
{"year_date": 978325200000, "count": 48}, | |
{"year_date": 1009861200000, "count": 48}, | |
{"year_date": 1041397200000, "count": 48}, | |
{"year_date": 1072933200000, "count": 53}, | |
{"year_date": 1104555600000, "count": 60}, | |
{"year_date": 1136091600000, "count": 60}, | |
{"year_date": 1167627600000, "count": 60}, | |
{"year_date": 1199163600000, "count": 60}, | |
{"year_date": 1230786000000, "count": 60}, | |
{"year_date": 1262322000000, "count": 15} | |
], | |
"transform": [ | |
{ | |
"type": "formula", | |
"expr": "toDate(datum['year_date'])", | |
"as": "year_date" | |
} | |
] | |
}, | |
{"name": "data_3"}, | |
{ | |
"name": "data_3_x_domain_symbol", | |
"values": [ | |
{"symbol": "MSFT"}, | |
{"symbol": "AMZN"}, | |
{"symbol": "IBM"}, | |
{"symbol": "GOOG"}, | |
{"symbol": "AAPL"} | |
] | |
}, | |
{ | |
"name": "data_3_y_domain_sum_price", | |
"values": [{"min": 85.52, "max": 6585.1}] | |
}, | |
{ | |
"name": "data_0_color_domain_symbol", | |
"values": [ | |
{"sort_field": 4, "symbol": "MSFT"}, | |
{"sort_field": 1, "symbol": "AMZN"}, | |
{"sort_field": 3, "symbol": "IBM"}, | |
{"sort_field": 2, "symbol": "GOOG"}, | |
{"sort_field": 0, "symbol": "AAPL"} | |
] | |
}, | |
{ | |
"name": "data_0_facet_facet0", | |
"values": [ | |
{ | |
"symbol": "MSFT", | |
"year_date": 946702800000, | |
"sum_price": 356.07999999999987 | |
}, | |
{"symbol": "MSFT", "year_date": 978325200000, "sum_price": 304.17}, | |
{"symbol": "MSFT", "year_date": 1009861200000, "sum_price": 261.92}, | |
{"symbol": "MSFT", "year_date": 1041397200000, "sum_price": 251.21}, | |
{"symbol": "MSFT", "year_date": 1072933200000, "sum_price": 272.09}, | |
{ | |
"symbol": "MSFT", | |
"year_date": 1104555600000, | |
"sum_price": 286.15000000000003 | |
}, | |
{"symbol": "MSFT", "year_date": 1136091600000, "sum_price": 297.1}, | |
{ | |
"symbol": "MSFT", | |
"year_date": 1167627600000, | |
"sum_price": 351.40999999999997 | |
}, | |
{ | |
"symbol": "MSFT", | |
"year_date": 1199163600000, | |
"sum_price": 302.50000000000006 | |
}, | |
{"symbol": "MSFT", "year_date": 1230786000000, "sum_price": 274.47}, | |
{"symbol": "MSFT", "year_date": 1262322000000, "sum_price": 85.52}, | |
{"symbol": "AMZN", "year_date": 946702800000, "sum_price": 527.17}, | |
{"symbol": "AMZN", "year_date": 978325200000, "sum_price": 140.87}, | |
{"symbol": "AMZN", "year_date": 1009861200000, "sum_price": 200.68}, | |
{ | |
"symbol": "AMZN", | |
"year_date": 1041397200000, | |
"sum_price": 468.20000000000005 | |
}, | |
{"symbol": "AMZN", "year_date": 1072933200000, "sum_price": 519.21}, | |
{"symbol": "AMZN", "year_date": 1104555600000, "sum_price": 482.25}, | |
{ | |
"symbol": "AMZN", | |
"year_date": 1136091600000, | |
"sum_price": 435.02000000000004 | |
}, | |
{"symbol": "AMZN", "year_date": 1167627600000, "sum_price": 839.43}, | |
{ | |
"symbol": "AMZN", | |
"year_date": 1199163600000, | |
"sum_price": 828.1800000000001 | |
}, | |
{ | |
"symbol": "AMZN", | |
"year_date": 1230786000000, | |
"sum_price": 1088.7700000000002 | |
}, | |
{"symbol": "AMZN", "year_date": 1262322000000, "sum_price": 372.63}, | |
{"symbol": "IBM", "year_date": 946702800000, "sum_price": 1162.97}, | |
{ | |
"symbol": "IBM", | |
"year_date": 978325200000, | |
"sum_price": 1163.6200000000001 | |
}, | |
{ | |
"symbol": "IBM", | |
"year_date": 1009861200000, | |
"sum_price": 901.4999999999999 | |
}, | |
{"symbol": "IBM", "year_date": 1041397200000, "sum_price": 927.69}, | |
{ | |
"symbol": "IBM", | |
"year_date": 1072933200000, | |
"sum_price": 1006.6299999999999 | |
}, | |
{"symbol": "IBM", "year_date": 1104555600000, "sum_price": 929.97}, | |
{ | |
"symbol": "IBM", | |
"year_date": 1136091600000, | |
"sum_price": 944.6100000000002 | |
}, | |
{ | |
"symbol": "IBM", | |
"year_date": 1167627600000, | |
"sum_price": 1215.3200000000002 | |
}, | |
{ | |
"symbol": "IBM", | |
"year_date": 1199163600000, | |
"sum_price": 1286.7000000000003 | |
}, | |
{"symbol": "IBM", "year_date": 1230786000000, "sum_price": 1311.56}, | |
{"symbol": "IBM", "year_date": 1262322000000, "sum_price": 374.56}, | |
{"symbol": "GOOG", "year_date": 1072933200000, "sum_price": 797.38}, | |
{ | |
"symbol": "GOOG", | |
"year_date": 1104555600000, | |
"sum_price": 3437.6699999999996 | |
}, | |
{"symbol": "GOOG", "year_date": 1136091600000, "sum_price": 4983.08}, | |
{"symbol": "GOOG", "year_date": 1167627600000, "sum_price": 6585.1}, | |
{"symbol": "GOOG", "year_date": 1199163600000, "sum_price": 5459.99}, | |
{ | |
"symbol": "GOOG", | |
"year_date": 1230786000000, | |
"sum_price": 5399.040000000001 | |
}, | |
{"symbol": "GOOG", "year_date": 1262322000000, "sum_price": 1616.93}, | |
{"symbol": "AAPL", "year_date": 946702800000, "sum_price": 260.98}, | |
{ | |
"symbol": "AAPL", | |
"year_date": 978325200000, | |
"sum_price": 122.11000000000003 | |
}, | |
{ | |
"symbol": "AAPL", | |
"year_date": 1009861200000, | |
"sum_price": 112.89999999999998 | |
}, | |
{ | |
"symbol": "AAPL", | |
"year_date": 1041397200000, | |
"sum_price": 112.16999999999999 | |
}, | |
{"symbol": "AAPL", "year_date": 1072933200000, "sum_price": 224.68}, | |
{ | |
"symbol": "AAPL", | |
"year_date": 1104555600000, | |
"sum_price": 578.0600000000001 | |
}, | |
{"symbol": "AAPL", "year_date": 1136091600000, "sum_price": 864.52}, | |
{"symbol": "AAPL", "year_date": 1167627600000, "sum_price": 1600.24}, | |
{"symbol": "AAPL", "year_date": 1199163600000, "sum_price": 1661.77}, | |
{ | |
"symbol": "AAPL", | |
"year_date": 1230786000000, | |
"sum_price": 1804.7200000000003 | |
}, | |
{"symbol": "AAPL", "year_date": 1262322000000, "sum_price": 619.7} | |
], | |
"transform": [ | |
{ | |
"type": "formula", | |
"expr": "toDate(datum['year_date'])", | |
"as": "year_date" | |
} | |
] | |
} | |
], | |
"signals": [ | |
{ | |
"name": "unit", | |
"value": {}, | |
"on": [ | |
{"events": "pointermove", "update": "isTuple(group()) ? group() : unit"} | |
] | |
}, | |
{ | |
"name": "legend_pointhover_0_symbol_legend", | |
"value": null, | |
"on": [ | |
{ | |
"events": [ | |
{ | |
"source": "view", | |
"markname": "symbol_legend_symbols", | |
"type": "click" | |
}, | |
{ | |
"source": "view", | |
"markname": "symbol_legend_labels", | |
"type": "click" | |
}, | |
{ | |
"source": "view", | |
"markname": "symbol_legend_entries", | |
"type": "click" | |
} | |
], | |
"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_symbol_legend", | |
"force": true | |
} | |
] | |
}, | |
{ | |
"name": "legend_pointselection_0_symbol_legend", | |
"value": null, | |
"on": [ | |
{ | |
"events": [ | |
{ | |
"source": "view", | |
"markname": "symbol_legend_symbols", | |
"type": "click" | |
}, | |
{ | |
"source": "view", | |
"markname": "symbol_legend_labels", | |
"type": "click" | |
}, | |
{ | |
"source": "view", | |
"markname": "symbol_legend_entries", | |
"type": "click" | |
} | |
], | |
"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_symbol_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": "cursor", | |
"value": "default", | |
"on": [ | |
{ | |
"events": "mousemove", | |
"update": "if(isDefined((group()).bounds), if(item().mark.marktype != 'group', 'default', 'crosshair'), 'default')" | |
} | |
] | |
}, | |
{ | |
"name": "width", | |
"init": "isFinite(containerSize()[0]) ? containerSize()[0] : 120", | |
"on": [ | |
{ | |
"events": "window:resize", | |
"update": "isFinite(containerSize()[0]) ? containerSize()[0] : 120" | |
} | |
] | |
}, | |
{ | |
"name": "height", | |
"init": "isFinite(containerSize()[1]) ? containerSize()[1] : 120", | |
"on": [ | |
{ | |
"events": "window:resize", | |
"update": "isFinite(containerSize()[1]) ? containerSize()[1] : 120" | |
} | |
] | |
}, | |
{ | |
"name": "child_width", | |
"update": "length(data('column_domain')) > 0? width / length(data('column_domain')) - 1: 120" | |
}, | |
{"name": "min_width", "update": "120 * length(data('column_domain'))"}, | |
{"name": "child_height", "update": "height"}, | |
{"name": "min_height", "update": "240"} | |
], | |
"marks": [ | |
{ | |
"type": "group", | |
"name": "column-title", | |
"title": { | |
"text": "date", | |
"style": "guide-title", | |
"offset": 10, | |
"color": "#01011b" | |
}, | |
"role": "column-title" | |
}, | |
{ | |
"type": "group", | |
"name": "row_header", | |
"encode": {"update": {"height": {"signal": "child_height"}}}, | |
"axes": [ | |
{ | |
"scale": "y", | |
"tickCount": {"signal": "ceil(child_height/40)"}, | |
"zindex": 0, | |
"labelFlush": false, | |
"title": "Sum of price", | |
"orient": "left", | |
"labelOverlap": true, | |
"grid": false, | |
"labels": true, | |
"encode": {"labels": {"update": {"text": {"signal": "datum.value"}}}}, | |
"ticks": true | |
} | |
], | |
"role": "row-header" | |
}, | |
{ | |
"type": "group", | |
"name": "column_header", | |
"from": {"data": "column_domain"}, | |
"sort": {"field": "datum[\"year_date\"]", "order": "ascending"}, | |
"encode": {"update": {"width": {"signal": "child_width"}}}, | |
"title": { | |
"text": { | |
"signal": "timeFormat(parent[\"year_date\"], timeUnitSpecifier([\"year\"], {\"year-month\":\"%b %Y \",\"year-month-date\":\"%b %d, %Y \"}))" | |
}, | |
"offset": 10, | |
"frame": "group", | |
"style": "guide-label", | |
"color": "#01011b" | |
}, | |
"role": "column-header" | |
}, | |
{ | |
"type": "group", | |
"name": "column_footer", | |
"from": {"data": "column_domain"}, | |
"sort": {"field": "datum[\"year_date\"]", "order": "ascending"}, | |
"encode": {"update": {"width": {"signal": "child_width"}}}, | |
"axes": [ | |
{ | |
"scale": "x", | |
"labelBaseline": "middle", | |
"zindex": 0, | |
"labelOverlap": "greedy", | |
"labelFlush": false, | |
"grid": false, | |
"labels": true, | |
"ticks": true, | |
"title": "symbol", | |
"labelAngle": 270, | |
"labelAlign": "right", | |
"orient": "bottom" | |
} | |
], | |
"role": "column-footer" | |
}, | |
{ | |
"type": "group", | |
"name": "cell", | |
"from": { | |
"facet": { | |
"data": "data_0_facet_facet0", | |
"name": "facet", | |
"groupby": ["year_date"] | |
} | |
}, | |
"sort": {"field": ["datum[\"year_date\"]"], "order": ["ascending"]}, | |
"encode": { | |
"update": { | |
"height": {"signal": "child_height"}, | |
"width": {"signal": "child_width"} | |
} | |
}, | |
"data": [ | |
{ | |
"name": "data_0", | |
"source": "facet", | |
"transform": [ | |
{ | |
"type": "filter", | |
"expr": "isValid(datum[\"sum_price\"]) && isFinite(+datum[\"sum_price\"])" | |
}, | |
{"type": "project", "fields": ["sum_price", "symbol"]} | |
] | |
} | |
], | |
"signals": [ | |
{ | |
"name": "facet", | |
"value": {}, | |
"on": [ | |
{ | |
"events": [{"source": "scope", "type": "pointermove"}], | |
"update": "isTuple(facet) ? facet : group(\"cell\").datum" | |
} | |
] | |
}, | |
{ | |
"name": "interval_intervalselection_0_x", | |
"value": [], | |
"on": [ | |
{ | |
"events": { | |
"source": "scope", | |
"filter": [ | |
"!event.item || event.item.mark.name !== \"interval_intervalselection_0_brush\"" | |
], | |
"type": "pointerdown" | |
}, | |
"update": "[x(unit), x(unit)]" | |
}, | |
{ | |
"events": { | |
"source": "window", | |
"between": [ | |
{ | |
"source": "scope", | |
"filter": [ | |
"!event.item || event.item.mark.name !== \"interval_intervalselection_0_brush\"" | |
], | |
"type": "pointerdown" | |
}, | |
{"source": "window", "type": "pointerup"} | |
], | |
"type": "pointermove", | |
"consume": true | |
}, | |
"update": "[interval_intervalselection_0_x[0], clamp(x(unit), 0, child_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, child_width)" | |
} | |
] | |
}, | |
{ | |
"name": "interval_intervalselection_0_symbol", | |
"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_symbol) || (invert(\"x\", interval_intervalselection_0_x)[0] === interval_intervalselection_0_symbol[0] && invert(\"x\", interval_intervalselection_0_x)[1] === interval_intervalselection_0_symbol[1])) ? interval_intervalselection_0_scale_trigger : {}" | |
} | |
] | |
}, | |
{ | |
"name": "interval_intervalselection_0_tuple", | |
"on": [ | |
{ | |
"events": [{"signal": "interval_intervalselection_0_symbol"}], | |
"update": "interval_intervalselection_0_symbol ? {unit: \"child_layer_0_layer_0_layer_0\" + '__facet_column_' + (facet[\"year_date\"]), fields: interval_intervalselection_0_tuple_fields, values: [interval_intervalselection_0_symbol]} : null" | |
} | |
] | |
}, | |
{ | |
"name": "interval_intervalselection_0_tuple_fields", | |
"value": [{"field": "symbol", "channel": "x", "type": "E"}] | |
}, | |
{ | |
"name": "interval_intervalselection_0_translate_anchor", | |
"value": {}, | |
"on": [ | |
{ | |
"events": [ | |
{ | |
"source": "scope", | |
"markname": "interval_intervalselection_0_brush", | |
"type": "pointerdown" | |
} | |
], | |
"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", | |
"between": [ | |
{ | |
"source": "scope", | |
"markname": "interval_intervalselection_0_brush", | |
"type": "pointerdown" | |
}, | |
{"source": "window", "type": "pointerup"} | |
], | |
"type": "pointermove", | |
"consume": true | |
} | |
], | |
"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: \"child_layer_0_layer_0_layer_0\" + '__facet_column_' + (facet[\"year_date\"]), fields: click_pointselection_0_tuple_fields, values: [(item().isVoronoi ? datum.datum : datum)[\"symbol\"]]} : null", | |
"force": true | |
}, | |
{ | |
"events": [{"source": "view", "type": "dblclick"}], | |
"update": "null" | |
} | |
] | |
}, | |
{ | |
"name": "click_pointselection_0_tuple_fields", | |
"value": [{"field": "symbol", "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_symbol_legend !== null ? {fields: legend_pointselection_0_tuple_fields, values: [legend_pointselection_0_symbol_legend]} : null" | |
}, | |
{ | |
"name": "legend_pointselection_0_tuple_fields", | |
"value": [{"field": "symbol", "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_symbol_legend !== null ? {fields: legend_pointhover_0_tuple_fields, values: [legend_pointhover_0_symbol_legend]} : null" | |
}, | |
{ | |
"name": "legend_pointhover_0_tuple_fields", | |
"value": [{"field": "symbol", "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)" | |
} | |
] | |
} | |
], | |
"marks": [ | |
{ | |
"type": "rect", | |
"name": "interval_intervalselection_0_brush_bg", | |
"encode": { | |
"enter": { | |
"fill": {"value": "#669EFF"}, | |
"fillOpacity": {"value": 0.07} | |
}, | |
"update": { | |
"y": [ | |
{ | |
"value": 0, | |
"test": "data(\"interval_intervalselection_0_store\").length && data(\"interval_intervalselection_0_store\")[0].unit === \"child_layer_0_layer_0_layer_0\" + '__facet_column_' + (facet[\"year_date\"])" | |
}, | |
{"value": 0} | |
], | |
"x2": [ | |
{ | |
"signal": "interval_intervalselection_0_x[1]", | |
"test": "data(\"interval_intervalselection_0_store\").length && data(\"interval_intervalselection_0_store\")[0].unit === \"child_layer_0_layer_0_layer_0\" + '__facet_column_' + (facet[\"year_date\"])" | |
}, | |
{"value": 0} | |
], | |
"y2": [ | |
{ | |
"field": { | |
"signal": null, | |
"datum": null, | |
"group": "height", | |
"parent": null | |
}, | |
"test": "data(\"interval_intervalselection_0_store\").length && data(\"interval_intervalselection_0_store\")[0].unit === \"child_layer_0_layer_0_layer_0\" + '__facet_column_' + (facet[\"year_date\"])" | |
}, | |
{"value": 0} | |
], | |
"x": [ | |
{ | |
"signal": "interval_intervalselection_0_x[0]", | |
"test": "data(\"interval_intervalselection_0_store\").length && data(\"interval_intervalselection_0_store\")[0].unit === \"child_layer_0_layer_0_layer_0\" + '__facet_column_' + (facet[\"year_date\"])" | |
}, | |
{"value": 0} | |
] | |
} | |
}, | |
"clip": true | |
}, | |
{ | |
"type": "rect", | |
"name": "child_layer_0_layer_0_layer_0_marks", | |
"from": {"data": "data_0"}, | |
"encode": { | |
"update": { | |
"cursor": {"value": "pointer"}, | |
"y": {"field": "sum_price", "scale": "y"}, | |
"fill": {"field": "symbol", "scale": "color"}, | |
"x": {"field": "symbol", "scale": "x"}, | |
"y2": {"value": 0, "scale": "y"}, | |
"ariaRoleDescription": {"value": "bar"}, | |
"description": { | |
"signal": "\"symbol: \" + (isValid(datum[\"symbol\"]) ? datum[\"symbol\"] : \"\"+datum[\"symbol\"]) + \"; Sum of price: \" + (datum[\"sum_price\"])" | |
}, | |
"opacity": [ | |
{ | |
"value": 0.3, | |
"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": 1} | |
], | |
"tooltip": { | |
"signal": "{\"symbol\": isValid(datum[\"symbol\"]) ? datum[\"symbol\"] : \"\"+datum[\"symbol\"], \"Sum of price\": datum[\"sum_price\"]}" | |
}, | |
"width": {"signal": "max(0.25, bandwidth('x'))"} | |
} | |
}, | |
"style": ["bar"], | |
"clip": true, | |
"interactive": true | |
}, | |
{ | |
"type": "rect", | |
"name": "interval_intervalselection_0_brush", | |
"encode": { | |
"enter": {"fill": {"value": "transparent"}}, | |
"update": { | |
"x": [ | |
{ | |
"signal": "interval_intervalselection_0_x[0]", | |
"test": "data(\"interval_intervalselection_0_store\").length && data(\"interval_intervalselection_0_store\")[0].unit === \"child_layer_0_layer_0_layer_0\" + '__facet_column_' + (facet[\"year_date\"])" | |
}, | |
{"value": 0} | |
], | |
"y2": [ | |
{ | |
"field": { | |
"signal": null, | |
"datum": null, | |
"group": "height", | |
"parent": null | |
}, | |
"test": "data(\"interval_intervalselection_0_store\").length && data(\"interval_intervalselection_0_store\")[0].unit === \"child_layer_0_layer_0_layer_0\" + '__facet_column_' + (facet[\"year_date\"])" | |
}, | |
{"value": 0} | |
], | |
"strokeOpacity": [ | |
{ | |
"value": 0.4, | |
"test": "interval_intervalselection_0_x[0] !== interval_intervalselection_0_x[1]" | |
}, | |
{} | |
], | |
"x2": [ | |
{ | |
"signal": "interval_intervalselection_0_x[1]", | |
"test": "data(\"interval_intervalselection_0_store\").length && data(\"interval_intervalselection_0_store\")[0].unit === \"child_layer_0_layer_0_layer_0\" + '__facet_column_' + (facet[\"year_date\"])" | |
}, | |
{"value": 0} | |
], | |
"y": [ | |
{ | |
"value": 0, | |
"test": "data(\"interval_intervalselection_0_store\").length && data(\"interval_intervalselection_0_store\")[0].unit === \"child_layer_0_layer_0_layer_0\" + '__facet_column_' + (facet[\"year_date\"])" | |
}, | |
{"value": 0} | |
], | |
"stroke": [ | |
{ | |
"value": "#669EFF", | |
"test": "interval_intervalselection_0_x[0] !== interval_intervalselection_0_x[1]" | |
}, | |
{} | |
] | |
} | |
}, | |
"clip": true | |
} | |
], | |
"axes": [ | |
{ | |
"scale": "x", | |
"zindex": 0, | |
"minExtent": 0, | |
"ticks": false, | |
"gridScale": "y", | |
"labels": false, | |
"domain": false, | |
"aria": false, | |
"orient": "bottom", | |
"maxExtent": 0, | |
"grid": true | |
}, | |
{ | |
"scale": "y", | |
"labels": false, | |
"zindex": 0, | |
"grid": true, | |
"orient": "left", | |
"aria": false, | |
"tickCount": {"signal": "ceil(child_height/40)"}, | |
"maxExtent": 0, | |
"domain": false, | |
"gridScale": "x", | |
"ticks": false, | |
"minExtent": 0 | |
} | |
], | |
"style": "cell" | |
} | |
], | |
"scales": [ | |
{ | |
"name": "x", | |
"type": "band", | |
"domain": { | |
"data": "data_3_x_domain_symbol", | |
"field": "symbol", | |
"sort": true | |
}, | |
"range": [0, {"signal": "child_width"}], | |
"paddingInner": 0.1, | |
"paddingOuter": 0.05 | |
}, | |
{ | |
"name": "y", | |
"type": "linear", | |
"domain": [ | |
{"signal": "(data(\"data_3_y_domain_sum_price\")[0] || {}).min"}, | |
{"signal": "(data(\"data_3_y_domain_sum_price\")[0] || {}).max"} | |
], | |
"range": [{"signal": "child_height"}, 0], | |
"nice": true, | |
"zero": true | |
}, | |
{ | |
"name": "color", | |
"type": "ordinal", | |
"domain": { | |
"data": "data_0_color_domain_symbol", | |
"field": "symbol", | |
"sort": {"op": "max", "field": "sort_field"} | |
}, | |
"range": [ | |
"#3e277a", | |
"#b28fc9", | |
"#2458b3", | |
"#669eff", | |
"#00998c", | |
"#14ccbd", | |
"#d99e0b", | |
"#ffc940", | |
"#717a94", | |
"#b1b6c4", | |
"#6a5898", | |
"#9588b6", | |
"#c1b9d4", | |
"#ece9f2", | |
"#008075", | |
"#63a5a5", | |
"#c6cad4", | |
"#c4799b", | |
"#c22762" | |
], | |
"interpolate": "hcl" | |
} | |
], | |
"usermeta": { | |
"selectionConfigs": { | |
"interval_intervalselection_0": { | |
"type": "interval", | |
"datetimeFields": [], | |
"derived": [] | |
}, | |
"click_pointselection_0": { | |
"type": "point", | |
"datetimeFields": [], | |
"derived": [] | |
}, | |
"legend_pointselection_0": { | |
"type": "point", | |
"datetimeFields": [], | |
"derived": [] | |
} | |
}, | |
"warnings": [] | |
}, | |
"background": "#ffffff", | |
"legends": [ | |
{ | |
"symbolOpacity": 1, | |
"title": "symbol", | |
"fill": "color", | |
"symbolType": "square", | |
"encode": { | |
"labels": { | |
"name": "symbol_legend_labels", | |
"interactive": true, | |
"update": { | |
"opacity": [ | |
{ | |
"test": "(!length(data(\"legend_pointselection_0_store\")) || (legend_pointselection_0[\"symbol\"] && indexof(legend_pointselection_0[\"symbol\"], datum.value) >= 0)) || (!length(data(\"legend_pointhover_0_store\")) || (legend_pointhover_0[\"symbol\"] && indexof(legend_pointhover_0[\"symbol\"], datum.value) >= 0))", | |
"value": 1 | |
}, | |
{"value": 0.35} | |
] | |
} | |
}, | |
"symbols": { | |
"name": "symbol_legend_symbols", | |
"interactive": true, | |
"update": { | |
"opacity": [ | |
{ | |
"test": "(!length(data(\"legend_pointselection_0_store\")) || (legend_pointselection_0[\"symbol\"] && indexof(legend_pointselection_0[\"symbol\"], datum.value) >= 0)) || (!length(data(\"legend_pointhover_0_store\")) || (legend_pointhover_0[\"symbol\"] && indexof(legend_pointhover_0[\"symbol\"], datum.value) >= 0))", | |
"value": 1 | |
}, | |
{"value": 0.35} | |
] | |
} | |
}, | |
"entries": { | |
"name": "symbol_legend_entries", | |
"interactive": true, | |
"update": {"fill": {"value": "transparent"}} | |
} | |
} | |
} | |
], | |
"layout": { | |
"padding": 20, | |
"offset": {"columnTitle": 10}, | |
"columns": {"signal": "length(data('column_domain'))"}, | |
"bounds": "full", | |
"align": "all" | |
}, | |
"config": { | |
"customFormatTypes": true, | |
"tooltipFormat": {"timeFormat": "%b %d, %Y %H:%M:%S"}, | |
"legend": { | |
"orient": "right", | |
"titleColor": "#01011b", | |
"labelColor": "#01011b", | |
"titleFontWeight": 500, | |
"titlePadding": 8 | |
}, | |
"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" | |
}, | |
"cell": {"stroke": "#ecedf2"} | |
}, | |
"axis": { | |
"labelColor": "#01011b", | |
"tickColor": "#ecedf2", | |
"titleColor": "#01011b", | |
"titleFontWeight": 500, | |
"titlePadding": 15, | |
"gridColor": "#ecedf2", | |
"domainColor": "#ecedf2" | |
} | |
}, | |
"autosize": {"type": "fit", "resize": false, "contains": "padding"}, | |
"padding": {"bottom": 20, "right": 20} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment