Simple API
Pass your plot container and data — the wrapper infers chart type, builds a navigable structure, and adds a text-chat interface automatically.
One function call. Smart defaults. Works with screen readers, keyboard, and more.
@data-navigator/bokeh-wrapper makes it easy to add accessible data navigation to any Bokeh chart. It is part of the Data Navigator project.
Bokeh charts are visually rich but historically inaccessible — assistive technologies can't meaningfully interact with the canvas or SVG output. This wrapper builds a parallel accessible interface that lets users navigate and interact with the underlying data and visualization.
Bokeh's Accessibility Efforts
This project is informed by the ongoing Bokeh Accessibility Audit, which documents and tracks accessibility issues in Bokeh. The audit is a separate project — check it out if you want to understand the problem space more deeply (or are interested in embarking on your own ecosystem-wide accessibility overhaul). The audit and this work has been supported by a CZI Essential Open Source Software (EOSS) Cycle 6 grant, “Accessible interactive data visualizations in Python with Bokeh." This wrapper's contributions have been led by Frank Elavsky, in collaboration with folks from Quansight, Anaconda, and Bokeh.
npm install data-navigator @data-navigator/bokeh-wrapperimport { addDataNavigator } from '@data-navigator/bokeh-wrapper';
import 'data-navigator/text-chat.css';
// After your Bokeh chart is rendered:
const wrapper = addDataNavigator({
plotContainer: '#my-plot',
data: myData
});That's it. The wrapper will:
inert so screen readers skip the inaccessible outputThis package is part of the Data Navigator ecosystem. If you are building a custom integration or want lower-level control, the core library and Inspector are available separately.