Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/416.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/301.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 单击向bokeh绘图添加点_Javascript_Python_Bokeh - Fatal编程技术网

Javascript 单击向bokeh绘图添加点

Javascript 单击向bokeh绘图添加点,javascript,python,bokeh,Javascript,Python,Bokeh,我正在尝试设置一个bokeh图,用户可以单击该图添加点。我已经看到了使用框selecttool向绘图添加Rect图示符的方法,但是我正在寻找一种方法来添加以单击位置为中心的圆形图示符。然后我还想将这些要点发送回服务器端。有人做过类似的事情吗?这在Bokeh版本0.12.13中对我很有用: from bokeh.plotting import figure from bokeh.models import ColumnDataSource, Column from bokeh.io import

我正在尝试设置一个bokeh图,用户可以单击该图添加点。我已经看到了使用
框selecttool
向绘图添加
Rect
图示符的方法,但是我正在寻找一种方法来添加以单击位置为中心的圆形图示符。然后我还想将这些要点发送回服务器端。有人做过类似的事情吗?

这在Bokeh版本0.12.13中对我很有用:

from bokeh.plotting import figure
from bokeh.models import ColumnDataSource, Column
from bokeh.io import curdoc
from bokeh.events import DoubleTap

coordList=[]

TOOLS = "tap"
bound = 10
p = figure(title='Double click to leave a dot.',
           tools=TOOLS,width=700,height=700,
           x_range=(-bound, bound), y_range=(-bound, bound))

source = ColumnDataSource(data=dict(x=[], y=[]))   
p.circle(source=source,x='x',y='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])        
p.on_event(DoubleTap, callback)

layout=Column(p)

curdoc().add_root(layout)
(要运行它,请将此脚本另存为something.py并在cmd:bokeh serve something.py--show中运行)


这个问题很老了,但我在下面发布了我找到的解决方案,因为我在搜索类似的东西-以防它能帮助其他人重置对我没有任何帮助。bokeh服务器版本1.1.0 bokeh figure reset按钮仅重置选择、缩放、平移,。。它不会重置源数据。如果您也想重置源数据,最简单的方法是刷新页面。否则,您可以添加一个带有回调的按钮来重置源代码。