有没有办法在Bokeh(0.70)中调整x_axis_label
和y_axis_label
字体/字体大小?我知道一种使用title_text_font_size
属性调整标题字体大小的方法,使用:
figure (..., title_text_font_size="12pt")
有没有办法指定类似的东西:
figure (..., x_axis_label_text_font_size='10pt')
(使用<name>
_ text_font_size的约定)来指示字体大小属性。以上都行不通。如果不存在,有人可以就如何在cofeescript + API方面进行这种调整提出一些指示,那么可以回馈给项目吗?感谢
答案 0 :(得分:15)
图中公开了可用于此的xaxis和yaxis属性。在您的用例中,它应该能够使用:
p.xaxis.axis_label = 'whatever'
p.xaxis.axis_label_text_font_size = "40pt"
答案 1 :(得分:0)
我想出了一种使用CustomJS
更改轴标签的技术:
在fig = figure(...)
声明中,将x_axis_location
和y_axis_location
设置为您不希望最终轴的位置。例如,如果要在最终图中将x轴放在底部,将y轴放在左侧,请设置以下内容:
x_axis_location='above', y_axis_location='right'
隐藏原始轴:
fig.xaxis.visible = None
fig.yaxis.visible = None
声明新轴并将它们添加到图中(即,将它们添加到您在步骤1中设置的轴的相对侧):
from bokeh.models import LinearAxis
xaxis = LinearAxis(axis_label="Initial x-axis label")
yaxis = LinearAxis(axis_label="Initial y-axis label")
fig.add_layout(xaxis, 'below')
fig.add_layout(yaxis, 'left')
将新轴添加到CustomJS
的参数中,您可以在其中更改axis_label
s:
callback = CustomJS(args=dict(source=source,
xaxis=xaxis,
yaxis=yaxis), code="""
xaxis.attributes.axis_label = "New x-axis label";
yaxis.attributes.axis_label = "New y-axis label";
xaxis.change.emit();
yaxis.change.emit();
""")