У меня есть несколько моментов, которые я намереваюсь зарисовать в окне рассеяния и показать в окне веб-браузера (используя Bokeh).Bokeh - получить информацию о точках, которые были выбраны
Для выбора я использую PolySelectTool или BoxSelectTool.
Есть две вещи, которые я хотел бы сделать: 1) Получить информацию о точках, которые были выбраны, чтобы рассчитать дополнительную информацию. 2) Поскольку точки представляют URL-адреса, я хотел бы, чтобы диаграмма открывала новую вкладку браузера и загружала конкретный URL-адрес всякий раз, когда я нажимаю точку (представляющую URL).
Я не думаю, что код важен. Но, чтобы сделать мой вопрос полным, вот оно ...
Y = my_data
urls = get_urls(my_data)
TOOLS="pan,wheel_zoom,reset,hover,poly_select,box_select"
p = figure(title = "My chart", tools=TOOLS)
p.xaxis.axis_label = 'X'
p.yaxis.axis_label = 'Y'
source = ColumnDataSource(
data=dict(
xvals=list(Y[:,0]),
yvals=list(Y[:,1]),
url=urls
)
)
p.scatter("xvals", "yvals",source=source,fill_alpha=0.2, size=5)
hover = p.select(dict(type=HoverTool))
hover.snap_to_data = False
hover.tooltips = OrderedDict([
("(x,y)", "($x, $y)"),
("url", "@url"),
])
select_tool = p.select(dict(type=BoxSelectTool))
#
# I guess perhaps something should be done with select_tool
#
show(p)