altair.theme.register#
- altair.theme.register(name, *, enable)#
用于注册主题函数的装饰器。
- 参数:
- name
在注册表中分配的唯一名称。
- enable
自动启用被包装的主题。
示例
注册并启用一个主题
import altair as alt from altair import theme @theme.register("param_font_size", enable=True) def custom_theme() -> theme.ThemeConfig: sizes = 12, 14, 16, 18, 20 return { "autosize": {"contains": "content", "resize": True}, "background": "#F3F2F1", "config": { "axisX": {"labelFontSize": sizes[1], "titleFontSize": sizes[1]}, "axisY": {"labelFontSize": sizes[1], "titleFontSize": sizes[1]}, "font": "'Lato', 'Segoe UI', Tahoma, Verdana, sans-serif", "headerColumn": {"labelFontSize": sizes[1]}, "headerFacet": {"labelFontSize": sizes[1]}, "headerRow": {"labelFontSize": sizes[1]}, "legend": {"labelFontSize": sizes[0], "titleFontSize": sizes[1]}, "text": {"fontSize": sizes[0]}, "title": {"fontSize": sizes[-1]}, }, "height": {"step": 28}, "width": 350, }
然后我们可以在检查时看到
name
参数被显示theme.active "param_font_size"
在启用其他主题之前,所有图表将使用
custom_theme()
中设置的默认值from vega_datasets import data source = data.stocks() lines = ( alt.Chart(source, title=alt.Title("Stocks")) .mark_line() .encode(x="date:T", y="price:Q", color="symbol:N") ) lines.interactive(bind_y=False)