Bokeh vs Matplotlib
Bokeh
bokeh.orgMatplotlib
matplotlib.orgSide by side
| Figure | Bokeh | Matplotlib |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Web | Yes | Yes |
| Windows | Yes | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| Self-hosted | — | Yes |
| Plans published | 1 | 1 |
| Spec score · Data Visualization Libraries Software | 8.4 (#5) | 8.2 (#8) |
| Spec score · Data Visualization Software | 8.3 (#32) | 8.7 (#17) |
| Dashboard type | interactive | both |
| Data sources | Python lists,NumPy arrays,ColumnDataSource,pandas DataFrames,Polars DataFrames,PyArrow DataFrames,pandas GroupBy objects,REST endpoints | Python lists,NumPy arrays |
| Embedded dashboards | Yes | Yes |
| Free plan | Yes | Yes |
| Integrations | The site describes using Bokeh in Jupyter and mounting it in FastAPI, Starlette, Django, or another ASGI app served with Uvicorn or Hypercorn. | The project lists third-party packages built on Matplotlib, including seaborn, HoloViews, plotnine, Cartopy, and WCSAxes. |
| License | The project describes Bokeh as BSD licensed. | The project says Matplotlib uses BSD-compatible code and grants a royalty-free license subject to its license terms. |
| Platform | web_and_desktop | web_and_desktop |
| Support | Support is volunteer-based, and the project directs usage questions to its public Discourse forum. | The project directs users to community help through Discourse, GitHub issues, and Stack Overflow. |
Plans
In their own words
Matplotlib
Matplotlib is a free Python library for creating static, animated, and interactive visualizations. The project says it can make publication-quality plots, and interactive figures can support zooming, panning, and updates. Users can customize visual style and figure layout, then export figures to many file formats. Matplotlib can be embedded in JupyterLab and graphical user interfaces. Third-party packages built on it include seaborn, HoloViews, plotnine, Cartopy, and WCSAxes. Official release wheels are available for Linux, macOS, and Windows, while documented runtime dependencies require Python 3.11 or newer. Additional dependencies may be needed for other GUI frameworks, LaTeX rendering, animation saving, and more file formats. The project describes its code as BSD-compatible and grants a royalty-free license subject to its license terms. Community help is available through Discourse, GitHub issues, and Stack Overflow. The project says Matplotlib began as a tool for EEG data and is now used in many fields. Its listed plan is Matplotlib at free.