截至Bokeh为止
0.12.4,围绕Bokeh的主题化仍存在一些未解决的问题(功能开发,一些bug和更多文档支持)。当前支持的是使用
Theme可以在当前文档上设置的对象的基于类型的主题。
该
Theme对象采用通用形式的JSON块:
{ 'attrs: { 'SomeTypeName': { 'foo_property': default_foo }, 'OtherTypeName': { 'bar_property': default_bar } } }或举一个具体的例子:
from bokeh.io import curdocfrom bokeh.themes import Themecurdoc().theme = Theme(json={'attrs': { # apply defaults to Figure properties 'Figure': { 'toolbar_location': None, 'outline_line_color': None, 'min_border_right': 10, }, # apply defaults to Axis properties 'Axis': { 'major_tick_in': None, 'minor_tick_out': None, 'minor_tick_in': None, 'axis_line_color': '#CAC6B6', 'major_tick_line_color': '#CAC6B6', }, # apply defaults to Legend properties 'Legend': { 'background_fill_alpha': 0.8, }}})也可以使用标准Python JSON工具从文件中读取此JSON。
如果这也恰好是在(目录样式)Bokeh服务器应用程序的上下文中,则还可以将主题作为
theme.yaml文件提供在与相同的目录中
main.py。参见例如Gapminder示例。



