Data visualization becomes more useful when charts can be shared, published, or integrated into applications. The Bokeh library provides powerful exporting features that allow developers and data analysts to save interactive plots in different formats, including standalone HTML files, image formats, and vector graphics.
In this tutorial, we will learn how to export Bokeh plots using different methods and understand when to use each export option.
What Is Plot Exporting in Bokeh?
Plot exporting in Bokeh means converting your interactive visualization into a file format that can be stored, shared, embedded, or published.
Bokeh supports several export options:
- HTML Export – Save interactive charts that run directly in a web browser.
- PNG Export – Export plots as raster images.
- SVG Export – Save high-quality vector graphics.
- JSON Export – Store plot structures and data for advanced applications.
These exporting capabilities make Bokeh suitable for reports, dashboards, websites, presentations, and research projects.
Installing Required Packages
Before exporting images from Bokeh, install the required dependencies.
Install Bokeh:
pip install bokeh
For PNG and SVG export, install additional packages:
pip install selenium pillow
You also need a supported browser driver such as ChromeDriver for image rendering.
Exporting Bokeh Plots as HTML
The most common way to export a Bokeh visualization is saving it as an HTML file.
Example:
from bokeh.plotting import figure, output_file, save plot = figure( title="Bokeh Export Example", x_axis_label="X Axis", y_axis_label="Y Axis" ) plot.circle( [1, 2, 3, 4], [6, 7, 8, 9], size=15 ) output_file("bokeh_chart.html") save(plot)
This creates an interactive HTML document that can be opened in any modern browser.
Users can:
- Zoom into the chart
- Pan across the visualization
- Reset the view
- Use interactive tools
HTML export is recommended for:
- Web publishing
- Interactive reports
- Data dashboards
- Online tutorials
Exporting Bokeh Plots as PNG Images
Sometimes you need a static image for documents, presentations, or social media.
Bokeh provides the export_png() function.
Example:
from bokeh.io import export_png export_png( plot, filename="chart.png" )
The result is a PNG image containing your visualization.
PNG export is useful for:
- Microsoft Office documents
- Research papers
- Blog articles
- Presentations
Exporting Bokeh Plots as SVG
SVG format provides scalable vector graphics that maintain quality when resized.
Example:
from bokeh.io import export_svgs plot.output_backend = "svg" export_svgs( plot, filename="chart.svg" )
SVG files are ideal for:
- Professional publishing
- Graphic design software
- High-resolution printing
- Scientific reports
Exporting Multiple Plots
Bokeh allows exporting layouts containing multiple charts.
Example:
from bokeh.layouts import column from bokeh.io import save, output_file chart_layout = column(plot1, plot2) output_file("dashboard.html") save(chart_layout)
This method is useful when creating:
- Analytics dashboards
- Monitoring systems
- Business reports
Customizing Export File Names
You can define custom file names when exporting.
Example:
output_file( "sales_report_2026.html", title="Sales Dashboard" ) save(plot)
Custom names help organize exported reports and make projects easier to manage.
Exporting Bokeh Charts for Web Applications
Bokeh HTML exports can easily be embedded into websites.
Example:
from bokeh.embed import file_html from bokeh.resources import CDN html = file_html( plot, CDN, "Interactive Chart" ) print(html)
This generates HTML content that can be inserted into web pages.
Common uses include:
- Flask applications
- Django websites
- Data science portals
- Internal company dashboards
Improving Export Quality
For better image quality:
Use Higher Resolution
export_png( plot, filename="high_quality_chart.png" )
Increase plot dimensions:
plot.width = 1200 plot.height = 800
Use SVG for Professional Output
SVG keeps lines and text sharp even when enlarged.
Common Export Problems and Solutions
PNG Export Fails
Possible causes:
- Missing Selenium
- Browser driver not installed
- Incorrect browser configuration
Solution:
pip install selenium
Make sure your browser driver is available.
SVG Export Does Not Work
Check that the SVG backend is enabled:
plot.output_backend = "svg"
HTML File Opens Without Interactivity
Make sure Bokeh resources are included:
from bokeh.resources import CDN
Best Practices for Exporting Bokeh Visualizations
Follow these recommendations:
✅ Use HTML for interactive sharing
✅ Use PNG for simple image-based reports
✅ Use SVG for professional publishing
✅ Use meaningful file names
✅ Test exported files before publishing
✅ Keep interactive charts lightweight for web performance
Conclusion
Bokeh makes exporting Python visualizations simple and flexible. Whether you need an interactive HTML dashboard, a high-quality PNG image, or a scalable SVG graphic, Bokeh provides reliable tools for every workflow.
Understanding Bokeh export methods helps developers create professional visualizations that can be shared online, included in reports, and integrated into modern data applications.
With HTML, PNG, and SVG exporting support, Bokeh remains one of the most powerful Python libraries for creating and distributing interactive data visualizations.


0 Comments