bokeh.driving#

提供一组装饰器,用于在每次调用函数时,以指定方式重复更新函数参数。

这些装饰器在 Bokeh 服务器应用程序中与周期性回调结合使用时尤其有用。

示例

例如,考虑 bounce 强制函数,它向前和向后推进序列

from bokeh.driving import bounce

@bounce([0, 1, 2])
def update(i):
    print(i)

如果重复调用此函数,它将在标准输出上打印以下序列

0 1 2 2 1 0 0 1 2 2 1 ...
bounce(sequence: Sequence[int]) partial[Callable[[], None]][source]#

返回一个驱动函数,它可以推进一个“反弹”的值序列。

seq = [0, 1, 2, 3]

# bounce(seq) => [0, 1, 2, 3, 3, 2, 1, 0, 0, 1, 2, ...]
参数:

sequence (seq) – 驱动程序反弹的值序列

cosine(w: float, A: float = 1, phi: float = 0, offset: float = 0) partial[Callable[[], None]][source]#

返回一个驱动函数,它可以推进余弦值序列。

value = A * cos(w*i + phi) + offset
参数:
  • w (float) – 余弦驱动器的频率

  • A (float) – 余弦驱动器的振幅

  • phi (float) – 启动余弦驱动器的相位偏移

  • offset (float) – 要添加到驱动器值的全局偏移量

count() partial[Callable[[], None]][source]#

返回一个驱动函数,它可以推进一个简单的计数。

force(f: Callable[[Any], None], sequence: Iterator[Any]) Callable[[], None][source]#

返回一个装饰器,它可以使用任意提供的生成器“强制”一个函数

参数:

sequence (iterable) – 用于驱动 f 的生成器

返回:

装饰器

linear(m: float = 1, b: float = 0) partial[Callable[[], None]][source]#

返回一个驱动函数,它可以推进线性值序列。

value = m * i + b
参数:
  • m (float) – 线性驱动器的斜率

  • b (float) – 线性驱动器的偏移量

repeat(sequence: Sequence[int]) partial[Callable[[], None]][source]#

返回一个驱动函数,它可以推进重复的值序列。

seq = [0, 1, 2, 3]

# repeat(seq) => [0, 1, 2, 3, 0, 1, 2, 3, 0, 1, ...]
参数:

sequence (seq) – 驱动程序反弹的值序列

sine(w: float, A: float = 1, phi: float = 0, offset: float = 0) partial[Callable[[], None]][source]#

返回一个驱动函数,它可以推进正弦值序列。

value = A * sin(w*i + phi) + offset
参数:
  • w (float) – 正弦驱动器的频率

  • A (float) – 正弦驱动器的振幅

  • phi (float) – 启动正弦驱动器的相位偏移

  • offset (float) – 要添加到驱动器值的全局偏移量