bokeh.models.expressions¶
Represent array expressions to be computed on the client (browser) side by BokehJS.
Expression models are useful as DataSpec
values when it is desired that
the array values be computed in the browser:
p.circle(x={'expr': some_expression}, ...)
or using the expr
convenience function:
from bokeh.core.properties import expr
p.circle(x=expr(some_expression), ...)
In this case, the values of the x
coordinates will be computed in the
browser by the JavaScript implementation of some_expression
using a
ColumnDataSource
as input.
-
class
CumSum
(**kwargs)[source]¶ Bases:
bokeh.models.expressions.Expression
An expression for generating arrays by cumulatively summing a single column from a
ColumnDataSource
.-
field
¶ property type:
String
The name of a
ColumnDataSource
column to cumulatively sum for new values.
-
include_zero
¶ property type:
Bool
Whether to include zero at the start of the result. Note that the length of the result is always the same as the input column. Therefore if this property is True, then the last value of the column will not be included in the sum.
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]
-
-
class
Expression
(**kwargs)[source]¶ Bases:
bokeh.model.Model
Base class for
Expression
models that represent a computation to be carried out on the client-side.JavaScript implementations should implement the following methods:
v_compute: (source) -> # compute an array of values
Note
If you wish for results to be cached per source and updated only if the source changes, implement
_v_compute: (source)
instead.Note
This is an abstract base class used to help organize the hierarchy of Bokeh model types. It is not useful to instantiate on its own.
-
class
Stack
(**kwargs)[source]¶ Bases:
bokeh.models.expressions.Expression
An expression for generating arrays by summing different columns from a
ColumnDataSource
.This expression is useful for implementing stacked bar charts at a low level.