Bokeh 2.3.3

p = figure( title="Stock Price with Moving Average", x_axis_type="datetime", width=800, height=400, tools="pan,wheel_zoom,box_zoom,reset,save" )

output_notebook() # or output_file("plot.html") bokeh 2.3.3

Bokeh 2.3.3 can generate huge .html files if you embed millions of points. : Enable WebGL for scatter plots ( p.scatter(..., webgl=True) ) or use CDSView with filters. p = figure( title="Stock Price with Moving Average",

# Add a line glyph p.line(x, y, legend_label="sin(x)", line_width=2) leading to visual artifacts.

: Active tabs now correctly stay in view on render, and a bug preventing plot heights from going below 600px was fixed .

Even though it's not the latest version, the Bokeh community still supports questions about 2.3.3 on:

For real-time dashboards, this version fixed a critical bug where stream() and patch() methods on ColumnDataSource would sometimes update the wrong indices, leading to visual artifacts.