リンク行為.

ブロック間の関連相互作用を増加させるために、ブロックをリンクすることは、一般に有用である。本節では,|boke.ploting|インタフェースを用いてこの操作を実行する簡単な方法を紹介する.

平行移動をリンクする.

一般に、複数の描画リンクにわたって平行移動またはズーム操作が必要となる。この機能を有効にするためには,範囲オブジェクトを間で共有するだけでよい figure() 電話します。

from bokeh.io import output_file, show
from bokeh.layouts import gridplot
from bokeh.plotting import figure

output_file("panning.html")

x = list(range(11))
y0 = x
y1 = [10-xx for xx in x]
y2 = [abs(xx-5) for xx in x]

# create a new plot
s1 = figure(plot_width=250, plot_height=250, title=None)
s1.circle(x, y0, size=10, color="navy", alpha=0.5)

# create a new plot and share both ranges
s2 = figure(plot_width=250, plot_height=250, x_range=s1.x_range, y_range=s1.y_range, title=None)
s2.triangle(x, y1, size=10, color="firebrick", alpha=0.5)

# create a new plot and share only one range
s3 = figure(plot_width=250, plot_height=250, x_range=s1.x_range, title=None)
s3.square(x, y2, size=10, color="olive", alpha=0.5)

p = gridplot([[s1, s2, s3]], toolbar_location=None)

# show the results
show(p)

現在、|boke.ploting|インタフェースリンクを使用して複数の描画間の平行移動をどのように使用するかがわかりました。

連動ブラシシート.

Bokehにおけるリンクブラシは,字形レンダラ間でデータソースを共有することで表される.これは,Bokehが理解すべきすべての内容,すなわち1つのアスペクトに作用する選択が同一のソースを共有するすべての他のフォントに渡さなければならないことである.リンク選択がデータソース内のデータサブセットのみを描画するフォントレンダラにどのように拡張されているかを見るには、参照されたい。 フィルタリングされたデータ付きリンク選択 それがそうです。

次のコードは、2つの異なる円形マーク記号間のリンクブラシの例を示す figure() 電話します。

from bokeh.io import output_file, show
from bokeh.layouts import gridplot
from bokeh.models import ColumnDataSource
from bokeh.plotting import figure

output_file("brushing.html")

x = list(range(-20, 21))
y0 = [abs(xx) for xx in x]
y1 = [xx**2 for xx in x]

# create a column data source for the plots to share
source = ColumnDataSource(data=dict(x=x, y0=y0, y1=y1))

TOOLS = "box_select,lasso_select,help"

# create a new plot and add a renderer
left = figure(tools=TOOLS, plot_width=300, plot_height=300, title=None)
left.circle('x', 'y0', source=source)

# create another new plot and add a renderer
right = figure(tools=TOOLS, plot_width=300, plot_height=300, title=None)
right.circle('x', 'y1', source=source)

p = gridplot([[left, right]])

show(p)

リンクの属性

また,Bokehモデル属性の値を同期を保つようにリンクすることも可能である. js_link 方法です。以下の例では、円形フラグ記号半径をSlider部材の値にリンクする。

from bokeh.layouts import column
from bokeh.models import Slider
from bokeh.plotting import figure, show

plot = figure(plot_width=400, plot_height=400)
r = plot.circle([1,2,3,4,5,], [3,2,5,6,4], radius=0.2, alpha=0.5)

slider = Slider(start=0.1, end=2, step=0.01, value=0.2)
slider.js_link('value', r.glyph, 'radius')

show(column(plot, slider))

リンクはJavaScriptで作成されているため,この手法は独立したBokeh文書やBokehサーバアプリケーションに適している.

小さな部品を追加する 様々な小さな部品に関するより多くの情報や JavaScriptコールバック 任意のJavaScriptコールバックの作成に関するより多くの情報を作成します。