在 iPython 笔记本中显示带有 JS 的 HTML 文件

Displaying an HTML file with a JS inside an iPython notebook

我在 iPython 笔记本中有一段代码,它以编程方式生成一个名为 'sound' 的文件夹,其中包含以下文件:index.html、canvas.js、graph.js 和 style.css.

如果我在浏览器中打开 index.html,我可以准确地看到我想要的输出:一个带有漂亮 JS 动画的图表,表示我正在建模的过程中进出的向量。

但是,我想从 iPython 笔记本本身中显示 HTML 文件。

为此,我输入以下代码:

from IPython.display import IFrame
IFrame('/Users/useird/Desktop/sound/index.html', width=700, height=350)

其中 returns 以下内容:

我不是css和js的专家,但我认为iPython可以在iframe中显示js,所以这里有什么问题?

谢谢

为了明确回答这个问题,我再次post我的评论。

IPython 使用 Tornado 网络服务器引擎为 html 页面提供服务。默认情况下,Web 服务器无法访问起始目录之上的文件。否则,这将是严重的安全隐患。 因此,要使您的数据可用于 Web 服务器,您必须将其放在笔记本起始目录或子目录中。

这不仅适用于 html 页面,也适用于您要使用标签显示的图像。