bokeh.resources#
resources 模块提供 Resources 类,用于轻松配置 BokehJS 代码和 CSS 资源应如何定位、加载和嵌入到 Bokeh 文档中。
此外,此处还提供了用于检索 Bokeh JavaScript 文件的 Subresource Integrity 哈希值的函数。
一些预配置的 Resources 对象作为属性提供。
- CDN#
从 CDN 加载精简的 BokehJS
- INLINE#
从库静态目录提供精简的 BokehJS
- class Resources(mode: Literal['inline', 'cdn', 'server', 'relative', 'absolute'] | Literal['server-dev', 'relative-dev', 'absolute-dev'] | None = None, *, version: str | None = None, root_dir: str | PathLike[str] | None = None, dev: bool | None = None, minified: bool | None = None, log_level: Literal['trace', 'debug', 'info', 'warn', 'error', 'fatal'] | None = None, root_url: str | None = None, path_versioner: Callable[[str], str] | None = None, components: list[Literal['bokeh', 'bokeh-gl', 'bokeh-widgets', 'bokeh-tables', 'bokeh-mathjax', 'bokeh-api']] | None = None, base_dir: str | PathLike[str] | None = None)[source]#
Resources 类封装了与加载或嵌入 Bokeh Javascript 和 CSS 相关的信息。
- 参数:
mode (str) –
Bokeh JS 和 CSS 应如何包含在输出中
请参阅下文,了解可用模式的描述
version (str, 可选) –
要加载的 Bokeh JS 和 CSS 的版本
仅对
'cdn'
模式有效root_dir (str, 可选) –
用于加载 Bokeh JS 和 CSS 资产的根目录
仅对
'relative'
和'relative-dev'
模式有效minified (bool, 可选) – JavaScript 和 CSS 是否应精简(默认值:True)
root_url (str, 可选) –
从中加载资源的 Bokeh 服务器的 URL 和端口
仅对
'server'
和'server-dev'
模式有效
以下 mode 值可用于配置 Resource 对象
'inline'
配置为内联提供整个 Bokeh JS 和 CSS'cdn'
配置为从https://cdn.bokeh.org
加载 Bokeh JS 和 CSS'server'
配置为从 Bokeh 服务器加载'server-dev'
与server
相同,但支持非精简资产'relative'
配置为相对于给定目录加载'relative-dev'
与relative
相同,但支持非精简资产'absolute'
配置为从已安装的 Bokeh 库静态目录加载'absolute-dev'
与absolute
相同,但支持非精简资产
配置完成后,Resource 对象公开以下公共属性
- js_raw#
需要放置在
<script>
标签内的任何原始 JS
- css_raw#
需要放置在
<style>
标签内的任何原始 CSS
- js_files#
需要由
<script>
标签加载的任何 JS 文件的 URL
- css_files#
需要由
<link>
标签加载的任何 CSS 文件的 URL
这些属性通常在嵌入 Bokeh 图时用作模板参数。
- get_sri_hashes_for_version(version: str) dict[str, str] [source]#
报告特定 BokehJS 版本的 SRI 脚本哈希值。
Bokeh 为发布到 CDN 的所有 JavaScript 文件提供 Subresource Integrity 哈希值,以实现完整发布。此函数返回一个字典,该字典将 JavaScript 文件名映射到其哈希值,用于单个 Bokeh 版本。
- 参数:
version (str) – 要返回 SRI 哈希值的 Bokeh 版本。哈希值仅针对完整版本提供,例如“1.4.0”,而不针对“dev”构建或候选版本。
- 返回值:
dict
- Raises:
ValueError – 如果指定的版本不存在
示例
单个版本返回的 dict 将文件名映射到该版本的 SRI 哈希值
{ 'bokeh-1.4.0.js': 'vn/jmieHiN+ST+GOXzRU9AFfxsBp8gaJ/wvrzTQGpIKMsdIcyn6U1TYtvzjYztkN', 'bokeh-1.4.0.min.js': 'mdMpUZqu5U0cV1pLU9Ap/3jthtPth7yWSJTu1ayRgk95qqjLewIkjntQDQDQA5cZ', 'bokeh-api-1.4.0.js': 'Y3kNQHt7YjwAfKNIzkiQukIOeEGKzUU3mbSrraUl1KVfrlwQ3ZAMI1Xrw5o3Yg5V', 'bokeh-api-1.4.0.min.js': '4oAJrx+zOFjxu9XLFp84gefY8oIEr75nyVh2/SLnyzzg9wR+mXXEi+xyy/HzfBLM', 'bokeh-tables-1.4.0.js': 'I2iTMWMyfU/rzKXWJ2RHNGYfsXnyKQ3YjqQV2RvoJUJCyaGBrp0rZcWiTAwTc9t6', 'bokeh-tables-1.4.0.min.js': 'pj14Cq5ZSxsyqBh+pnL2wlBS3UX25Yz1gVxqWkFMCExcnkN3fl4mbOF8ZUKyh7yl', 'bokeh-widgets-1.4.0.js': 'scpWAebHEUz99AtveN4uJmVTHOKDmKWnzyYKdIhpXjrlvOwhIwEWUrvbIHqA0ke5', 'bokeh-widgets-1.4.0.min.js': 'xR3dSxvH5hoa9txuPVrD63jB1LpXhzFoo0ho62qWRSYZVdyZHGOchrJX57RwZz8l' }
- verify_sri_hashes() None [source]#
验证完整发布包中的 SRI 哈希值。
此函数将完整发布包中 BokehJS 文件的计算 SRI 哈希值与 SRI 清单文件中的值进行比较。如果所有哈希值都匹配,则返回 None,否则将引发异常。
注意
此函数只能在完整发布(例如“1.2.3”)包上调用。
- 返回值:
None
- Raises:
ValueError – 如果在完整发布包之外调用
RuntimeError – 如果存在丢失、多余或不匹配的文件