BokehJSによりクライアント(ブラウザ)で計算された配列式を表す.
表現モデルは非常に有用です DataSpec ブラウザで配列値を計算する必要がある場合の値:
DataSpec
p.circle(x={'expr': some_expression}, ...)
または使用する expr 便利な機能:
expr
from bokeh.core.properties import expr p.circle(x=expr(some_expression), ...)
本例では、 x 座標は以下のJavaScriptによりブラウザで計算される. some_expression 使用 ColumnDataSource 入力とします。
x
some_expression
ColumnDataSource
CumSum
ベースクラス: bokeh.models.expressions.Expression
bokeh.models.expressions.Expression
単一の列の疲れを加算することによって配列を生成するための式 ColumnDataSource それがそうです。
field
属性タイプ: String
String
の名称 ColumnDataSource 新しい値を累積する.
include_zero
属性タイプ: Bool
Bool
結果の開始時にゼロが含まれているかどうか.結果の長さはつねに入力列と同じであることに注意されたい.したがって,その属性がTrueであれば,その列の最後の値は総和に含まれない.
source = ColumnDataSource(data=dict(foo=[1, 2, 3, 4])) CumSum(field='foo') # -> [1, 3, 6, 10] CumSum(field='foo', include_zero=True) # -> [0, 1, 3, 6]
js_event_callbacks
property type: Dict ( String , List ( Instance ( CustomJS ) ) )
Dict
List
Instance
CustomJS
イベント名のリストへのマッピング CustomJS 返電します。
通常,この属性を直接修正すべきではなく,使用すべきである Model.js_on_event 方法:
Model.js_on_event
callback = CustomJS(code="console.log('tap event occurred')") plot.js_on_event('tap', callback)
js_property_callbacks
属性名のリストへのマッピング CustomJS コールバックは、文書作成時にBoehJS端に設定されます。
通常,この属性を直接修正すべきではなく,使用すべきである Model.js_on_change 方法:
Model.js_on_change
callback = CustomJS(code="console.log('stuff')") plot.x_range.js_on_change('start', callback)
name
このモデルのユーザが提供する任意の名前.
文書を検索して特定のBokehモデルを検索する際には,この名前が有用である可能性がある.
>>> plot.circle([1,2,3], [4,5,6], name="temp") >>> plot.select(name="temp") [GlyphRenderer(id='399d53f5-73e9-44d9-9527-544b761c7705', ...)]
注釈
提供された任意の名前に対して一意保証または他の条件を強制的に実行することはなく、Bokehもいかなる理由でもその名前を直接使用することはない。
subscribed_events
属性タイプ: List () String )
Pythonは購読しているイベントリストをコールバックします。このモデルに対して、これはBokehJSからPythonに返されるイベントのセットです。
tags
属性タイプ: List () Any )
Any
このモデルに付加されるユーザが提供する任意の値のオプションリスト。
特定のBokehモデルを検索するために文書を検索する際に、このデータは有用である可能性がある:
>>> r = plot.circle([1,2,3], [4,5,6]) >>> r.tags = ["foo", 10] >>> plot.select(tags=['foo', 10]) [GlyphRenderer(id='1de4c3df-a83d-480a-899b-fb263d3d5dd9', ...)]
あるいは必要なメタデータをアクセス可能なモデルに付加する便利な方法でしかありません CustomJS ダイヤルして待つ.
提供されたいかなるラベルに対しても一意保証または他の条件を強制的に実行することはなく、Bokehもいかなる理由でもこれらのラベルを直接使用することはない。
apply_theme
アプリケーションのセットは、デフォルト値のテーマ値ではなく使用されるが、アプリケーションセット値はカバーされない。
入力された辞書はそのまま保持し,他の事例と共有してメモリを節約することができる(したがって呼び出し方和 HasProps インスタンスはそれを修正すべきである).
HasProps
property_values (dict) -- デフォルト値の代わりにテーマ値を使用します
なし
dataspecs
全員の名前を集める DataSpec 属性です。
この方法は いつも クラス階層構造を遍歴し,任意の親クラスで定義された属性を含む.
名前または名前 DataSpec 特性
set[str]
dataspecs_with_props
辞書を集めて全員の名前をマッピングします DataSpec 属性は関連する属性に付加される.
名前と名前のマッピング DataSpec 特性
dict[str, DataSpec]
equals
モデルの構造は平等である.
other (HasProps) -- 比較するもう一つの例は
属性が構造的に等しいならばTrue,そうでなければFalseとなる.
js_link
2つのBokehモデル属性をJavaScriptを用いてリンクする.
これは、CustomJSコールバックを追加して、1つのBokehモデル属性が値を変更するときに別のBokehモデル属性を更新するプロセスを簡略化することができる便利な方法である。
attr (str) -- このモデル上のBokeh属性の名前
other (Model) -- Self.attrにリンクされたBokehモデル
other_attr (str) -- 上の属性 other リンクがつながっている
other
attr_selector (Union[int, str]) -- 購読可能表中の項目をリンクするためのインデックス attr
attr
バージョン1.1での追加
ValueError --
サンプル
このコードには js_link :
select.js_link('value', plot, 'sizing_mode')
以下と同等である.
from bokeh.models import CustomJS select.js_on_change('value', CustomJS(args=dict(other=plot), code="other.sizing_mode = this.value" ) )
また,範囲スライダの左側をattr_selectorを用いて描画のx_rangeに付加する:
range_slider.js_link('value', plot.x_range, 'start', attr_selector=0)
これは以下のようなものです
from bokeh.models import CustomJS range_slider.js_on_change('value', CustomJS(args=dict(other=plot.x_range), code="other.start = this.value[0]" ) )
js_on_change
付加する. CustomJS 任意のBoehJSモデルイベントのコールバック.
BokehJS側では,モデル属性の変更イベントの形式は "change:property_name" それがそうです。便宜上,このメソッドに渡されるイベント名もモデル上の属性の名前であれば, "change:" 自動:
"change:property_name"
"change:"
# these two are equivalent source.js_on_change('data', callback) source.js_on_change('change:data', callback)
しかし,属性変更イベントに加えて,他のタイプのイベントに応答することも可能である.例えば、データがストリーミングされる限り ColumnDataSource 使用、使用 "stream" 源上の事件:
"stream"
source.js_on_change('streaming', callback)
layout
lookup
見つかる PropertyDescriptor クラス上のBokeh属性に対して,属性名を与える.
PropertyDescriptor
name (str) -- 検索する属性の名前
名前の属性の記述子 name
on_change
このオブジェクトには,以下の場合にトリガするコールバックを追加する. attr 変化する。
attr (str) -- このオブジェクトの属性名
*callbacks (callable) -- 登録するコールバック関数
例:
widget.on_change('value', callback1, callback2, ..., callback_n)
properties
このような上の属性名を収集する.
この方法は (オプション) クラス階層構造を遍歴し,任意の親クラスで定義された属性を含む.
with_bases (bool, optional) -- 結果に親クラスで定義された属性が含まれているかどうか.(デフォルト値:TRUE)
属性名
properties_containers
このようなすべてのコンテナ属性の名前を収集する.
容器属性名
properties_with_refs
このクラスにも引用されているすべての属性の名前を収集する.
引用の属性を持つ名前
properties_with_values
属性名をその値にマッピングした辞書を収集する.
直列化不可能な属性をスキップし、属性値は、一般に属性から読み出される値とはやや異なる可能性がある“直列化”フォーマットを採用し、この方法は、オブジェクトインスタンスを可逆的に再構成するために必要な情報を返すことを目的とする。
include_defaults (bool, optional) -- オブジェクト作成以来明示的に設定されていない属性が含まれているかどうか。(デフォルト値:TRUE)
属性名からその値へのマッピング
dict
query_properties_with_values
クエリの属性値 HasProps 述語を持つインスタンス.
query (callable) -- 属性記述子を受け取ってTrueまたはFalseの呼び出し可能関数を返す
include_defaults (bool, optional) -- ユーザが明示的に設定していない属性(デフォルト値:true)が含まれているかどうか
適合属性の属性名と値のマッピング
references
すべてに戻る Models この対象は引用されている.
Models
remove_on_change
この対象からコールバックを削除する
select
このオブジェクトおよびそのすべての参照において、所与のセレクタに一致するオブジェクトがクエリされる。
selector (JSON-like) --
配列番号. [模型]
select_one
このオブジェクトおよびそのすべての参照において、所与のセレクタに一致するオブジェクトがクエリされる。複数のオブジェクトが見つかれば,エラーを引き起こす.単一のマッチングオブジェクトを返し、何も見つからない場合は、NONEを返す:パラメータセレクタ::タイプセレクタ:JSONに類似している
模型
set_from_json
JSONからこのオブジェクトの属性値を設定する.
name -- (Str):設定する属性の名前
json -- (json-value):設定する属性の値
models (dict or None, optional) -- モデルIDからモデルへのマッピング(デフォルト値:なし)更新する属性も参照する値を持つ場合には,このオプションが必要となる.
setter (ClientSession or ServerSession or None, optional) -- これはBokehアプリケーションの“ブーメラン”の更新を阻止するためのものです。Bokehサーバアプリケーションのコンテキストでは,入力された属性更新は,更新を実行するセッションを用いてアノテーションを行う.この値は、更新によってトリガされた任意の後続の変更通知によって伝播される。セッションは、イベント設定器自身と比較し、自身からの任意の更新を抑制することができる。
set_select
指定された属性/値を有する所与のセレクタに一致するオブジェクトが更新される。
updates (dict) --
themed_values
すべてのテーマが提供するカバーを得る。
結果は属性名から値までの辞書形式で返されるか,または None 主題がこのインスタンスの任意の値をカバーしていない場合。
None
DICTやNONE
to_json
この対象属性を返す辞書は,“JSONタイプ”(文字列,数字,ブール値,無,辞書,リスト)のみを含む.
他のオブジェクトへの参照は“refs”(オブジェクトIDとタイプ情報のみ)に系列化されるため,逆直列化プログラムはそれらの他のオブジェクトの完全な属性を単独で持つ必要がある.
対応のない from_json() 逆直列化オブジェクトは、通常、文書コンテキストで行われるからである(文書は引用を解析できるので)。
from_json()
ほとんどの場合、文書全体を直列化して逆直列化することが望ましい。
include_defaults (bool) -- デフォルト値から変更されていない属性が含まれているかどうか
to_json_string
このオブジェクト属性をコードするJSON文字列を返す.
他のオブジェクトへの参照は参照(オブジェクトIDとタイプ情報のみ)に系列化されるため,逆直列化プログラムはそれらの他のオブジェクトの完全な属性を単独で持つ必要がある.
対応のない from_json_string() 逆直列化オブジェクトは、通常、文書コンテキストで行われるからである(文書は引用を解析できるので)。
from_json_string()
trigger
unapply_theme
すべてのトピック値を削除し、デフォルト値を復元します。
update
与えられたキーワードパラメータに基づいてオブジェクトの属性を更新する.
以下の内容は等価である.
from bokeh.models import Range1d r = Range1d # set properties individually: r.start = 10 r.end = 20 # update properties together: r.update(start=10, end=20)
update_from_json
JSON属性辞書から対象の属性を更新する.
json_attributes -- (json-dict):更新する属性と値
document
♪the Document このモデルは添付されています None )
Document
struct
このモデルのBokehプロトコル“構造”,すなわち以下の形式の辞書:
{ 'type' : << view model name >> 'id' : << unique model id >> }
他にもあるかもしれません subtype フィールド(このモデルがサブタイプである場合)。
{ "field": null, "id": "10093", "include_zero": false, "js_event_callbacks": {}, "js_property_callbacks": {}, "name": null, "subscribed_events": [], "tags": [] }
Expression
ベースクラス: bokeh.model.Model
bokeh.model.Model
基本的なものです Expression クライアントで実行する計算のモデルを示す.
JavaScript実現には以下の方法を実現すべきである.
各ソースの結果をキャッシュし、ソース変更時にのみ更新したい場合は、実現してください _v_compute: (source) 代わりに。
_v_compute: (source)
これは,Bokehモデルタイプの階層構造の組織を支援するための抽象基底クラスである. 単独インスタンス化は無駄である.
{ "id": "10101", "js_event_callbacks": {}, "js_property_callbacks": {}, "name": null, "subscribed_events": [], "tags": [] }
Stack
中の異なる列を和して配列の式を生成する. ColumnDataSource それがそうです。
この式は、スタック棒グラフをより低いレベルで実現するために非常に有用である。
fields
属性タイプ: Seq () String )
Seq
中の一連のフィールド。 ColumnDataSource 和を求める例:
Stack(fields=['sales', 'marketing'])
属性の要素は1つの値配列(ブラウザで)を計算する. 'sales' そして 'marketing' データソース列。
'sales'
'marketing'
{ "fields": [], "id": "10107", "js_event_callbacks": {}, "js_property_callbacks": {}, "name": null, "subscribed_events": [], "tags": [] }