From 04c3570c4c1ddaa4b6dd717c20946acec6b532e9 Mon Sep 17 00:00:00 2001 From: Philipp Rudiger Date: Thu, 19 Dec 2019 16:37:10 +0100 Subject: [PATCH] Changes for compatibility with Vega5 and altair 4 --- panel/models/vega.py | 4 ++-- panel/pane/vega.py | 18 ++++++++++++------ 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/panel/models/vega.py b/panel/models/vega.py index 82c28bd815..c4877da3f0 100644 --- a/panel/models/vega.py +++ b/panel/models/vega.py @@ -12,14 +12,14 @@ class VegaPlot(LayoutDOM): """ __javascript__ = ["https://cdn.jsdelivr.net/npm/vega@5", - 'https://cdn.jsdelivr.net/npm/vega-lite@3', + 'https://cdn.jsdelivr.net/npm/vega-lite@4', 'https://cdn.jsdelivr.net/npm/vega-embed@6'] __js_require__ = { 'baseUrl': 'https://cdn.jsdelivr.net/npm/', 'paths': { "vega-embed": "vega-embed@6/build/vega-embed.min", - "vega-lite": "vega-lite@3/build/vega-lite.min", + "vega-lite": "vega-lite@4/build/vega-lite.min", "vega": "vega@5/build/vega.min" }, 'exports': {'vega-embed': 'vegaEmbed', 'vega': 'vega', 'vega-lite': 'vl'} diff --git a/panel/pane/vega.py b/panel/pane/vega.py index 683db88d8a..4ac1a77e7e 100644 --- a/panel/pane/vega.py +++ b/panel/pane/vega.py @@ -103,13 +103,19 @@ def _get_dimensions(cls, json, props): if json is None: return - view = {} - if 'width' in json: - view['width'] = json['width'] - if 'height' in json: - view['height'] = json['height'] if 'config' in json and 'view' in json['config']: - view = json['config']['view'] + size_config = json['config']['view'] + else: + size_config = json + + view = {} + for w in ('width', 'continuousWidth'): + if w in size_config: + view['width'] = size_config[w] + for h in ('height', 'continuousHeight'): + if h in size_config: + view['height'] = size_config[h] + for p in ('width', 'height'): if p not in view: continue