Hi - this issue arose for me starting with Bokeh 2.2.0. I’ve found that if you add one figure’s circle renderer to another figure, then if any of the circles exit the range of either of the figures, the webpage freezes. I also found the same result with other glyph renderers like diamonds and crosses. Lines work, however.
I’m using firefox, python 3.6.8, ubuntu 18.04.
Here’s a minimal example to reproduce it with bokeh serve:
from bokeh.io import curdoc
from bokeh.plotting import figure
from bokeh.layouts import row
# prepare some data
x = [1, 2, 3, 4, 5]
y = [6, 7, 2, 4, 5]
# create a figure and plot some circles
p1 = figure(title="first", x_axis_label='x', y_axis_label='y')
c = p1.circle(x, y, size=8)
# create another figure that will plot the above circles as well
p2 = figure(title='second', x_axis_label='x', y_axis_label='y')
p2.renderers.append(c)
# try setting the range of one of the plots in a way that should hide some circles
# this freezes the app using either x or y ranges for either p1 or p2 figures
p1.x_range.start=0
p1.x_range.end=3
curdoc().add_root(row(p1, p2))
I guess my ultimate question is: is this a genuine bug, or is this just me abusing the library in a way I can’t get away with anymore ? Thanks