誰もがボケの図にx軸とy軸のタイトル/ラベルを追加する方法を知っていますか?例えば。 X軸:時間、Y軸:株価。
どうもありがとう!
Bokeh 0.11.1の時点で、 軸に関するユーザーガイドセクション は、既存の軸のプロパティを編集する方法を示しています。その方法は以前と同じです:
p = figure(width=300, height=300, x_axis_label='Initial xlabel')
p.xaxis.axis_label = 'New xlabel'
この例を確認してください: periodic table
また、レンダラー関数(その例ではtitle
)の代わりにfigure(...)
への呼び出しに一般的なプロット関連オプション(_plot_width
_、circle
など)を与えることができます。
CustomJS
を使用して軸ラベルを変更するこの手法を思い付きました。
fig = figure(...)
宣言で、x_axis_location
and 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();
""")
from bokeh.plotting import figure, output_file, show
from bokeh.models.annotations import Title
p = figure(plot_width=1300, plot_height=400,x_axis_type="datetime")
p.xaxis.axis_label = 'Time'
p.yaxis.axis_label = 'Stock Price'
p.line(time,stock_price)
t = Title()
t.text = 'Stock Price during year 2018'
p.title = t
show(p)