bokeh.settings#
使用环境变量控制全局配置选项。一个全局设置对象,Bokeh 的其他部分可以引用它。
已定义的设置#
设置可以通过 bokeh.settings.settings
实例上的访问器方法访问。例如
settings.minified()
Bokeh 提供了以下已定义的设置
allowed_ws_origin
#
- 类型:
List[String]
- 环境变量:
BOKEH_ALLOW_WS_ORIGIN
- 默认值:
[]
- 开发默认值:
(未设置)
Bokeh 服务器应用程序允许的 WebSocket 源的逗号分隔列表。
auth_module
#
- 类型:
字符串
- 环境变量:
BOKEH_AUTH_MODULE
- 默认值:
None
- 开发默认值:
(未设置)
Python 模块的路径,该模块为 Bokeh 服务器实现用户身份验证功能。
警告
此模块的内容将被执行!
browser
#
- 类型:
字符串
- 环境变量:
BOKEH_BROWSER
- 默认值:
None
- 开发默认值:
‘none’
Bokeh 应该用来显示文档的默认浏览器。
有效值是 Python 标准库 webbrowser 模块理解的任何预定义的浏览器名称。
version
#
- 类型:
字符串
- 环境变量:
BOKEH_CDN_VERSION
- 默认值:
None
- 开发默认值:
(未设置)
与 CDN 资源一起使用的 BokehJS 版本。
有关完整详细信息,请参阅 Resources
类参考。
chromedriver_path
#
- 类型:
字符串
- 环境变量:
BOKEH_CHROMEDRIVER_PATH
- 默认值:
None
- 开发默认值:
(未设置)
chromedriver 可执行文件的名称或完整路径。
这用于允许 bokeh.io.export
在系统上工作,这些系统对 chromedriver
使用不同的名称,例如 chromedriver-binary
或 chromium.chromedriver
(或其变体,例如 Snap 包管理器使用;请参阅 https://snapcraft.io/)。
docs_cdn
#
- 类型:
字符串
- 环境变量:
BOKEH_DOCS_CDN
- 默认值:
None
- 开发默认值:
(未设置)
构建文档时应该用于加载 CDN 资源的 BokehJS 版本。
要使用本地构建的 BokehJS 构建和显示文档,请使用 local
。例如
BOKEH_DOCS_CDN=local make clean serve
将使用本地构建的 BokehJS 构建文档的新副本,并打开一个新的浏览器选项卡来查看它们。
否则,该值将被解释为 CDN 的版本。例如
BOKEH_DOCS_CDN=1.4.0rc1 make clean
将构建使用 CDN 中 BokehJS 版本 1.4.0rc1
的文档。
docs_version
#
- 类型:
字符串
- 环境变量:
BOKEH_DOCS_VERSION
- 默认值:
None
- 开发默认值:
(未设置)
构建文档时要规定的 Bokeh 版本。
此设置对于使用新修复或更改重新部署现有版本的文档是必要的。
ico_path
#
- 类型:
Ico 路径
- 环境变量:
BOKEH_ICO_PATH
- 默认值:
‘default’
- 开发默认值:
‘default-dev’
配置 Bokeh 服务器用作 favicon.ico 文件的 .ico 文件的文件路径。
该值应该是 .ico 文件的完整路径,或以下特殊值之一
default
使用默认项目 .ico 文件none
完全关闭 favicon.ico 支持
ignore_filename
#
- 类型:
布尔值
- 环境变量:
BOKEH_IGNORE_FILENAME
- 默认值:
False
- 开发默认值:
(未设置)
保存 Bokeh 内容时是否忽略当前脚本文件名。
log_level
#
- 类型:
字符串
- 环境变量:
BOKEH_LOG_LEVEL
- 默认值:
‘info’
- 开发默认值:
‘debug’
设置 JavaScript BokehJS 代码的日志级别。
有效值按严重性递增顺序排列
trace
debug
info
warn
error
fatal
minified
#
- 类型:
布尔值
- 环境变量:
BOKEH_MINIFIED
- 默认值:
True
- 开发默认值:
False
Bokeh 是否应使用压缩的 BokehJS 资源。
nodejs_path
#
- 类型:
字符串
- 环境变量:
BOKEH_NODEJS_PATH
- 默认值:
None
- 开发默认值:
(未设置)
Node 可执行文件的路径。
NodeJS 是一个可选依赖项,PNG 和 SVG 导出以及编译自定义扩展需要它。Bokeh 将尝试自动定位已安装的 Node 可执行文件。使用此环境变量来覆盖 Bokeh 找到的位置,或指向非标准位置。
validate_doc
#
- 类型:
布尔值
- 环境变量:
BOKEH_VALIDATE_DOC
- 默认值:
True
- 开发默认值:
(未设置)
Bokeh 是否应对文档执行验证检查。
将此值设置为 False 可能会略微提高性能。
pretty
#
- 类型:
字符串
- 环境变量:
BOKEH_PRETTY
- 默认值:
False
- 开发默认值:
True
JSON 字符串是否应进行美化打印。
py_log_level
#
- 类型:
日志级别
- 环境变量:
BOKEH_PY_LOG_LEVEL
- 默认值:
‘none’
- 开发默认值:
‘debug’
Python Bokeh 代码的日志级别。
有效值按严重性递增顺序排列
trace
debug
info
warn
error
fatal
none
resources
#
- 类型:
字符串
- 环境变量:
BOKEH_RESOURCES
- 默认值:
‘cdn’
- 开发默认值:
‘server’
要配置哪种 BokehJS 资源,例如 inline
或 cdn
有关完整详细信息,请参阅 Resources
类参考。
rootdir
#
- 类型:
字符串
- 环境变量:
BOKEH_ROOTDIR
- 默认值:
None
- 开发默认值:
(未设置)
与 relative
资源一起使用的根目录
有关完整详细信息,请参阅 Resources
类参考。
default_server_host
#
- 类型:
字符串
- 环境变量:
BOKEH_DEFAULT_SERVER_HOST
- 默认值:
‘localhost’
- 开发默认值:
(未设置)
允许定义 Bokeh 的服务器和资源使用的默认主机。
default_server_port
#
- 类型:
整数
- 环境变量:
BOKEH_DEFAULT_SERVER_PORT
- 默认值:
5006
- 开发默认值:
(未设置)
允许定义 Bokeh 的服务器和资源使用的默认端口。
secret_key
#
- 类型:
字符串
- 环境变量:
BOKEH_SECRET_KEY
- 默认值:
None
- 开发默认值:
(未设置)
一个长期的、密码学上随机的密钥,对于 Bokeh 部署是唯一的。
serialize_include_defaults
#
- 类型:
字符串
- 环境变量:
BOKEH_SERIALIZE_INCLUDE_DEFAULTS
- 默认值:
False
- 开发默认值:
(未设置)
序列化 HasProps
实例时是否包含默认值。
这主要用于测试、调试序列化/协议和其他内部目的。
sign_sessions
#
- 类型:
字符串
- 环境变量:
BOKEH_SIGN_SESSIONS
- 默认值:
False
- 开发默认值:
(未设置)
Bokeh 服务器是否应仅允许使用密钥签名的会话。
如果为 True,则还必须设置 BOKEH_SECRET_KEY
。
simple_ids
#
- 类型:
布尔值
- 环境变量:
BOKEH_SIMPLE_IDS
- 默认值:
True
- 开发默认值:
(未设置)
Bokeh 是否应使用简单的整数作为模型 ID(从 1000 开始)。
如果为 False,Bokeh 将对对象标识符使用 UUID。例如,如果多个进程正在向单个 Bokeh 文档贡献内容,则可能需要这样做。
ssl_certfile
#
- 类型:
字符串
- 环境变量:
BOKEH_SSL_CERTFILE
- 默认值:
None
- 开发默认值:
(未设置)
用于 SSL 终止的证书文件的路径。
ssl_keyfile
#
- 类型:
字符串
- 环境变量:
BOKEH_SSL_KEYFILE
- 默认值:
None
- 开发默认值:
(未设置)
用于 SSL 终止的私钥文件的路径。
ssl_password
#
- 类型:
字符串
- 环境变量:
BOKEH_SSL_PASSWORD
- 默认值:
None
- 开发默认值:
(未设置)
解密 SSL 密钥文件的密码(如果需要)。
validation_level
#
- 类型:
验证级别
- 环境变量:
BOKEH_VALIDATION_LEVEL
- 默认值:
‘none’
- 开发默认值:
(未设置)
验证检查是否应记录或引发错误和警告的异常。
有效值为
none
:不引发异常(默认)。errors
:在错误时引发异常(但不在警告时引发)all
:在错误和警告时都引发异常
优先级#
设置值的查找始终按以下规定的顺序进行
- 立即提供的值
这些是传递给设置的值
settings.minified(minified_val)
如果
minified_val
不是 None,则将按原样返回。否则,如果传递了 None,则设置将继续在搜索顺序中查找值。这对于传递默认情况下为 None 的可选函数参数很有用。如果参数传递给函数,则它将优先。- 先前用户设置的值
如果该值在代码中显式设置
settings.minified = False
那么此值将优先于其他来源。应用程序可以使用此功能来设置在命令行上提供的值,以便它们优先于环境变量。
- 用户指定的配置覆盖文件
显式加载的 YAML 配置文件中的值
settings.load_config("/path/to/bokeh.yaml)
来自
bokeh.yaml
的任何值将优先于以下来源。应用程序可能会提供命令行参数来加载此类文件。例如:bokeh serve --use-config myconf.yaml
- 环境变量
在相关的环境变量中找到的值
BOKEH_MINIFIED=no bokeh serve app.py
- 本地用户配置文件
Bokeh 将在当前用户的主目录
${HOME}/.bokeh/bokeh.yaml
中查找 YAML 配置文件。- 全局系统配置(尚未实现)
计划未来支持从全局系统配置加载 Bokeh 设置。
- 本地默认值
这些是在访问设置时定义的默认值
settings.resources(default="server")
本地默认值的优先级低于除全局默认值之外的所有其他设置机制。
- 全局默认值
这些是由设置声明定义的默认值。它们的优先级低于所有其他设置机制。
如果在搜索所有这些位置后仍未获得值,则将引发 RuntimeError。
API#
settings
对象上有几个方法