Jupyter:如何在新内核中实现图像查看功能 我现在在玩CLIN(C++解释器),它是Jujyter内核,我想用类似于IPython的C++函数来在Jupyter笔记本上显示一个图像。 最好的方法是什么

Jupyter:如何在新内核中实现图像查看功能 我现在在玩CLIN(C++解释器),它是Jujyter内核,我想用类似于IPython的C++函数来在Jupyter笔记本上显示一个图像。 最好的方法是什么,c++,ipython,jupyter,cling,C++,Ipython,Jupyter,Cling,更新 感谢您的回复,我目前正在深入研究这两个选项,以检查Windows上有多少稳定的版本,并可能在下周回来(目前正在进行大量其他工作),对每个版本都发表评论。该功能需要在内核级别实现,也就是说,如果“粘住”本身不给你逃生舱,你很可能就做不到 从技术上讲,当您显示某些内容时,cling将发送一条display\u data消息,其中包含一个mimebundle(从mimetype到data的映射形式),因此您需要挂接到内核本身才能这样做 我不相信它还存在于Cling中,尽管他们最近在Jupyter

更新


感谢您的回复,我目前正在深入研究这两个选项,以检查Windows上有多少稳定的版本,并可能在下周回来(目前正在进行大量其他工作),对每个版本都发表评论。

该功能需要在内核级别实现,也就是说,如果“粘住”本身不给你逃生舱,你很可能就做不到

从技术上讲,当您显示某些内容时,cling将发送一条
display\u data
消息,其中包含一个mimebundle(从mimetype到data的映射形式),因此您需要挂接到内核本身才能这样做

我不相信它还存在于Cling中,尽管他们最近在JupyterCon(视频尚未在线)上做了一个演示,在那里他们展示了他们的内核


因此,我强烈建议您尝试xeus cling,并询问那里的开发人员(在GitHub上打开一个问题,或者尝试他们响应的Gitter频道)

该功能需要在内核级别实现,也就是说,如果GRANG本身没有为您提供执行该功能的转义图案填充,那么您可能无法

从技术上讲,当您显示某些内容时,cling将发送一条
display\u data
消息,其中包含一个mimebundle(从mimetype到data的映射形式),因此您需要挂接到内核本身才能这样做

我不相信它还存在于Cling中,尽管他们最近在JupyterCon(视频尚未在线)上做了一个演示,在那里他们展示了他们的内核


因此,我强烈建议您尝试xeus cling,并询问那里的开发人员(在GitHub上打开一个问题,或者尝试他们响应的Gitter频道)

这能满足您的需要吗?从cling/tools/Jupyter/Kernel.cpp:

/// Push MIME stuff to Jupyter. To be called from user code.
///\param contentDict - dictionary of MIME type versus content. E.g.
/// {{"text/html", {"<div></div>", }}
///\returns `false` if the output could not be sent.
bool pushOutput(const std::map<std::string, MIMEDataRef> contentDict) {
///将MIME内容推送到Jupyter。从用户代码中调用。
///\param contentDict-MIME类型与内容的字典。例如。
///{{“text/html”,{“,”}
///\如果无法发送输出,则返回'false'。
bool pushOutput(const std::map contentDict){

这能满足您的需要吗?从cling/tools/Jupyter/Kernel.cpp:

/// Push MIME stuff to Jupyter. To be called from user code.
///\param contentDict - dictionary of MIME type versus content. E.g.
/// {{"text/html", {"<div></div>", }}
///\returns `false` if the output could not be sent.
bool pushOutput(const std::map<std::string, MIMEDataRef> contentDict) {
///将MIME内容推送到Jupyter。从用户代码调用。
///\param contentDict-MIME类型与内容的字典。
///{{“text/html”,{“,”}
///\如果无法发送输出,则返回'false'。
bool pushOutput(const std::map contentDict){

我建议您查看
xeus-cling
内核的丰富mime类型呈现功能

对于任何类型,您都可以重写
mime\u bundle\u repr
函数。它是通过参数相关的查找获取的,您的对象将神奇地在线显示在Jupyter笔记本中

xeus cling还支持Jupyter交互式小部件和快速文档


您可以通过单击GitHub存储库自述页面顶部的“启动绑定器”按钮在线试用它。

我建议您查看
xeus cling
内核的丰富mime类型呈现功能

对于任何类型,您都可以重写
mime\u bundle\u repr
函数。它是通过参数相关的查找获取的,您的对象将神奇地在线显示在Jupyter笔记本中

xeus cling还支持Jupyter交互式小部件和快速文档

您可以通过单击GitHub存储库自述页面顶部的“启动活页夹”按钮在线试用