Событие Bokeh DoubleTap: как найти двойной щелчок - PullRequest
1 голос
/ 01 марта 2020

У меня есть сетка глифов, сгенерированных plot.rect, и я хочу найти глиф, дважды ударяемый пользователем. Каждый глиф представляет точку данных и имеет 2 связанных URL-адреса. Я уже использую действие одним касанием (через TapTool + OpenURL) для общего URL-адреса, на который я хочу отправить пользователя, и я хотел использовать действие двойного нажатия для менее распространенного URL-адреса

Фрагмент моего кода:

# self.source contains `logs_link` used below in OpenURL and contains a second
# field called `alt_logs_link` that I want to surface via double-tap.
rect = self.plot.rect(
    x="run_date", y="test_name", width=1, height=1, 
    source=self.source, line_color='#ffffff', line_width=1.5,
    fill_color={'field': 'job_status', 'transform': color_mapper})

taptool = self.plot.select(type=TapTool)
taptool.callback = OpenURL(url="@logs_link{safe}")

def doubletap_callback(event):
    print("IN DOUBLE TAP")
    print(event)
self.plot.on_event(DoubleTap, doubletap_callback)

Событие DoubleTap, кажется, содержит только координаты x / y события. Как я могу сопоставить эти координаты глифу, который был дважды нажат?

Может быть, я могу использовать .select(), чтобы найти глиф как-то , но я не смог найти способ сделать запрос по x / y координаты.

Я открыт для других предложений, кроме двойного нажатия, чтобы отобразить 2 разных URL на глиф.

...