Skip to content
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 16 additions & 12 deletions panel/pane/plotly.py
Original file line number Diff line number Diff line change
Expand Up @@ -155,21 +155,25 @@ def _get_sources_for_trace(json, data, parent_path=''):

@param.depends('object', 'link_figure', watch=True)
def _update_figure(self):
import plotly.graph_objs as go

if (self.object is None or not isinstance(self.object, (go.Figure, go.FigureWidget)) or
self.object is self._figure or not self.link_figure):
fig = self.object
if (fig is None or isinstance(fig, dict) or fig is self._figure or not self.link_figure):
Comment thread
philippjfr marked this conversation as resolved.
Outdated
return

# Monkey patch the message stubs used by FigureWidget.
fig = self.object
fig._send_addTraces_msg = lambda *_, **__: self._update_from_figure('add')
fig._send_deleteTraces_msg = lambda *_, **__: self._update_from_figure('delete')
fig._send_moveTraces_msg = lambda *_, **__: self._update_from_figure('move')
fig._send_restyle_msg = self._send_restyle_msg
fig._send_relayout_msg = self._send_relayout_msg
fig._send_update_msg = self._send_update_msg
fig._send_animate_msg = lambda *_, **__: self._update_from_figure('animate')
if not hasattr(fig, '_send_addTraces_msg'):
fig._send_addTraces_msg = lambda *_, **__: self._update_from_figure('add')
if not hasattr(fig, '_send_deleteTraces_msg'):
fig._send_deleteTraces_msg = lambda *_, **__: self._update_from_figure('delete')
if not hasattr(fig, '_send_moveTraces_msg'):
fig._send_moveTraces_msg = lambda *_, **__: self._update_from_figure('move')
if not hasattr(fig, '_send_restyle_msg'):
fig._send_restyle_msg = self._send_restyle_msg
if not hasattr(fig, '_send_relayout_msg'):
fig._send_relayout_msg = self._send_relayout_msg
if not hasattr(fig, '_send_update_msg'):
fig._send_update_msg = self._send_update_msg
if not hasattr(fig, '_send_animate_msg'):
fig._send_animate_msg = lambda *_, **__: self._update_from_figure('animate')
Comment thread
philippjfr marked this conversation as resolved.
Comment thread
philippjfr marked this conversation as resolved.
self._figure = fig

def _send_relayout_msg(self, relayout_data, source_view_id=None):
Expand Down
Loading