Я новичок в использовании Bokeh. Для моего проекта я пытаюсь использовать боке, чтобы сделать стрелки из одной точки в другую. Поэтому я делаю точки, дважды щелкнув, а затем рисуя стрелки одним щелчком мыши. Но, похоже, это ничего не делает.
from bokeh.models import Arrow, OpenHead
from bokeh.plotting import figure
from bokeh.models import ColumnDataSource
from bokeh.io import curdoc
from bokeh.events import DoubleTap, Tap
coordList=[]
source = ColumnDataSource(data=dict(x=[], y=[]))
#add a dot where the click happened
def callback(event):
Coords=(event.x,event.y)
coordList.append(Coords)
source.data = dict(x=[i[0] for i in coordList], y=[i[1] for i in coordList])
for x, y in coordList:
if x == None and y == None:
coordList.pop(0)
p = figure(plot_width=700, plot_height=700)
def draw(event):
# Function to add arrows from the coordList
p.add_layout(Arrow(end=OpenHead(line_color="firebrick", line_width=4),
x_start=1, y_start=1, x_end=4, y_end=4))
p.circle(source=source,x='x',y='y')
p.on_event(DoubleTap, callback)
p.on_event(Tap, draw)
curdoc().add_root(p)
Любая помощь будет принята с благодарностью. Спасибо