我正在为Jupyter Notebook开发自定义窗口小部件。用户打开笔记本时,该窗口小部件不会自动加载,这主要是由于在内核中找不到窗口小部件状态。现在的功能是显示图像,直到笔记本加载。
我确定一个单元格包含以下内容:
from IPython.display import Image
img = Image(filename="eggsnspam.png", width=500)
display(img)
当用户加载笔记本时,将正确地重新加载其图像。
该窗口小部件中包含代码,以生成该窗口小部件的PNG“快照”图像。我要显示此图像,以便:
我尝试研究动态显示或隐藏图像的几种方法,但是没有任何效果。我相信最有前途的未尝试方法是将Image和小部件显示在输出单元格中的同一位置,以Z顺序将小部件呈现在Image的前面。但是,我不知道如何对这两者进行布局。
有必要在小部件JS和/或Python代码中进行管理,而不是通过笔记本中的代码单元进行管理。此外,该小部件没有background
属性,并且我还没有学习如何创建它。 (在我参与该项目之前的讨论很喜欢将背景设置为所需图像的想法。)
答案 0 :(得分:0)
jp_doodle画布小部件具有“快照”功能 它存储画布的图像。我想你可以 用它来做您正在描述的事情。
请参阅:
来自jp_doodle小部件实现
https://github.com/AaronWatters/jp_doodle
有许多在画布上显示图像的示例。