from bokeh.models import Range1d
from bokeh.plotting import figure, show, output_file
output_file("foo.html")
p = figure()
# this will only work for fixed layout plots, and you'll have to tune
# the 'end' property to match your plot dimensions
p.extra_y_ranges = {"foo": Range1d(start=0, end=520)}
p.circle([10, 20, 30], [20, 260, 500], size=10, y_range_name="foo")
show(p)
无法直接使用屏幕空间坐标来定位图示符。事实证明,要同时支持这一点和Bokeh的一个核心特性的所有命中测试机制都太难了。我可以想象有两种可能的解决办法。在
第一种方法是使用某种
Annotation
。注释可以定位在屏幕坐标中(因为它们不参与命中测试)。目前还没有“圆”注释,但也许一个长方体或多边形注释可以满足您的需要。BoxAnnotation在《用户指南》中有一节,poly注释与之类似:https://docs.bokeh.org/en/latest/docs/user_guide/annotations.html#box-annotations
或者,您可以创建添加第二个“额外范围”,它是屏幕(像素)单位的代理。其中一个例子是:
现在,当绘图内部维度发生变化时,也有回调。对于可调整大小的绘图,您可以将其扩展为更健壮/更复杂。为这些内部绘图维度添加回调的方法如下:
^{pr2}$对于python(服务器)回调。将
js_on_change
用于CustomJS
回调。在相关问题 更多 >
编程相关推荐