@@ -210,7 +210,6 @@ def plot(figure_or_data, validate=True, **plot_options):
210210
211211 """
212212 figure = tools .return_figure_from_figure_or_data (figure_or_data , validate )
213-
214213 for entry in figure ['data' ]:
215214 if ('type' in entry ) and (entry ['type' ] == 'scattergl' ):
216215 continue
@@ -499,7 +498,7 @@ def heartbeat(self, reconnect_on=(200, '', 408)):
499498 "cannot write to a closed connection. "
500499 "Call `open()` on the stream to open the stream."
501500 )
502-
501+
503502 @property
504503 def connected (self ):
505504 if self ._stream is None :
@@ -1400,10 +1399,14 @@ def add_share_key_to_url(plot_url, attempt=0):
14001399
14011400
14021401def _send_to_plotly (figure , ** plot_options ):
1403- """
1404-
1405- """
14061402 fig = tools ._replace_newline (figure ) # does not mutate figure
1403+
1404+ # replace '/' with ':' for errorless response
1405+ if 'data' in fig :
1406+ for item in fig ['data' ]:
1407+ for key in ['xsrc' , 'ysrc' ]:
1408+ item [key ] = item [key ].replace ('/' , ':' )
1409+
14071410 data = json .dumps (fig ['data' ] if 'data' in fig else [],
14081411 cls = utils .PlotlyJSONEncoder )
14091412 credentials = get_credentials ()
@@ -1414,8 +1417,7 @@ def _send_to_plotly(figure, **plot_options):
14141417 fileopt = plot_options ['fileopt' ],
14151418 world_readable = plot_options ['world_readable' ],
14161419 sharing = plot_options ['sharing' ],
1417- layout = fig ['layout' ] if 'layout' in fig
1418- else {}),
1420+ layout = fig ['layout' ] if 'layout' in fig else {}),
14191421 cls = utils .PlotlyJSONEncoder )
14201422
14211423 # TODO: It'd be cool to expose the platform for RaspPi and others
0 commit comments