更改Bokeh中的框选择工具的突出显示行为?
作者:互联网
我有一个用黑眼圈绘制的散点图.使用框选择工具时,框外的圆圈会自动着色为半透明的蓝色.
在API中,有没有一种方法可以使外部圆圈保持黑色并更改内部圆圈的颜色?如果我有两个链接的散点图,是否可以使每个图上突出显示的圆圈具有不同的颜色?
import numpy as np
from bokeh.plotting import figure, output_file, show
N = 100
max = 100
x = np.random.random(size=N) * max
y = np.random.random(size=N) * max
output_file("scatter.html")
p = figure(tools="box_select", width=400, height=400, x_range=(0,100), y_range=(0,100))
p.circle(x, y, size=10, fill_color="black", line_color=None)
show(p)
解决方法:
您可以更改圆形渲染器的selection_glyph和nonselection_glyph属性.有关更多详细信息,请参见manual或How to set properties of selected/unselected glyphs in bokeh.
您可以为每个图使用不同的颜色,选择不会共享视觉属性.
import numpy as np
from bokeh.plotting import figure, show, output_file
from bokeh.models import Circle
N = 100
max = 100
x = np.random.random(size=N) * max
y = np.random.random(size=N) * max
p = figure(tools="box_select", width=400, height=400, x_range=(0,100), y_range=(0,100))
r = p.circle(x, y, size=10, fill_color="black", line_color=None)
r.selection_glyph = Circle(fill_color="orange", line_color=None)
r.nonselection_glyph = Circle(fill_color="black", line_color=None)
output_file("scatter.html")
show(p)
标签:bokeh,python 来源: https://codeday.me/bug/20191119/2035267.html