Я хотел бы итеративно добавлять линии на график и изменять цвет ранее нанесенных линий.Например, выделить только самый последний.Однако следующее не может обновить все цвета, кроме самой первой строки:
from bokeh.plotting import *
from bokeh.io import push_notebook
fig=figure()
h=show(fig, notebook_handle=True)
ps=[fig.line([1,2],[i,i], color="black") for i in range(3)]
for p in ps:
p.glyph.line_color="red"
push_notebook(h)
Это сработает, только если я сделаю один push_notebook()
, однако я хотел бы использовать несколько обновлений, так как мои вычисленияработает.
Как я могу сделать эту работу?
РЕДАКТИРОВАТЬ: фактическое использование может быть ближе к этому:
from bokeh.plotting import *
from bokeh.io import push_notebook
output_notebook()
fig=figure()
h=show(fig, notebook_handle=True) # start plot and "slow" computation to watch
ps=[]
for i in range(3):
p=fig.line([1,2],[i,i], line_width=2, color="red") # new line in red
if ps:
ps[-1].glyph.line_color="black" # old lines in black -> this is not happening
ps.append(p)
push_notebook(h)