Я хотел бы сделать экземпляр изображения в ноутбуке jupyter для ответа на события щелчка - как мы можем это сделать? Я также хочу иметь возможность идентифицировать изображение, которое было нажато. Это просто сделать с помощью кнопок, но не с изображениями.Как сделать и изображение с ipywidget кликабельным?
3
A
ответ
2
После игры вокруг с этим, единственный способ, которым я мог бы сделать это до сих пор с помощью некоторых JavaScript ... в коде Python, у меня есть что-то вроде:
from ipywidgets import Image
from IPython.display import display, Javascript
im = Image(value=open(filename, 'rb').read())
im.add_class('the_image_class')
def on_image_click():
#do something....
return
#Now, I wrote some javascript(jQuery) code like this...
js = ''' $(".the_image_class").on("click", function(e){
var kernel = IPython.notebook.kernel;
kernel.execute("on_image_click()");
});'''
#then, run the javascript...
display(Javascript(js))
Который вид отсутствует точка полностью использует виджеты в python ... Есть ли лучший способ привязать функции python к событиям виджетов, без javascript?