Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Saving html file with images in bokeh

I'm creating a bokeh plot containing several images. I create and show my file like this:

output_file(my_dir + "Graphs\\graph")
show(bar)

It then shows me the plot and creates a graph.html file in my directory "Graphs". But when I open the html later, the plot doesn't contain the images. How can I save the html file, so that it contains the images as well?

like image 309
Axolotl Avatar asked Nov 28 '22 03:11

Axolotl


1 Answers

As the documentation mentions, you have two ways to achieve this:

  • using save() instead of show()

    from bokeh.plotting import figure, output_file, save
    p = figure(title="Basic Title", plot_width=300, plot_height=300)
    p.circle([1, 2], [3, 4])
    output_file("test.html")
    save(p)
    
  • using the file_html function, which is low-level

    from bokeh.plotting import figure
    from bokeh.resources import CDN
    from bokeh.embed import file_html
    
    plot = figure()
    plot.circle([1,2], [3,4])
    
    html = file_html(plot, CDN, "my plot")
    
    with open("/myPath.html") as f:
        f.write(html)
    
like image 93
filaton Avatar answered Dec 04 '22 12:12

filaton