300

我开始严重依赖 IPython 笔记本应用程序来开发和记录算法。太棒了; 但是有些事情似乎应该是可能的,但我不知道该怎么做:

我想将本地图像插入到我的(本地)IPython 笔记本降价中,以帮助记录算法。我知道的足够多,<img src="image.png">可以在降价中添加类似的东西,但这就是我所知道的。我假设我可以将图像放在由 127.0.0.1:8888 (或某个子目录)表示的目录中以便能够访问它,但我不知道该目录在哪里。(我正在使用 Mac。)那么,是否可以在没有太多麻烦的情况下做我想做的事情?

4

14 回答 14

324

到目前为止给出的大多数答案都朝着错误的方向发展,建议加载其他库并使用代码而不是标记。在 Ipython/Jupyter Notebooks 中它非常简单。确保单元格确实在标记中并显示图像使用:

![alt text](imagename.png "Title")

与提出的其他方法相比,另一个优势是您可以显示所有常见的文件格式,包括 jpg、png 和 gif(动画)。

于 2016-05-05T18:05:06.740 回答
266

notebook 目录中的文件在“files/” url 下可用。因此,如果它在基本路径中,它将是<img src="files/image.png">,并且子目录等也可用:<img src="files/subdir/image.png">等。

更新:从 IPython 2.0 开始,files/不再需要前缀(参见发行说明)。所以现在解决方案<img src="image.png">可以按预期工作。

于 2012-05-17T00:08:24.000 回答
93

我使用的是 ipython 2.0,所以只有两行。

from IPython.display import Image
Image(filename='output1.png')
于 2014-04-22T13:23:24.270 回答
58

将图像导入 Jupyter NB 比大多数人在这里提到的要简单得多。

  1. 只需创建一个空的 Markdown 单元格。
  2. 然后将图像文件拖放到空的 Markdown 单元格中。

然后出现将插入图像的 Markdown 代码。

例如,下面以灰色突出显示的字符串将出现在 Jupyter 单元格中:

![Venus_flytrap_taxonomy.jpg](attachment:Venus_flytrap_taxonomy.jpg)

  1. 然后按 Shift-Enter 执行 Markdown 单元格。然后 Jupyter 服务器将插入图像,然后图像就会出现。

我正在运行的 Jupyter 笔记本服务器是:5.7.4 with Python 3.7.0 on Windows 7。

这太简单了!!

截至 2021 年 3 月 18 日的更新:这种简单的“从 Windows 文件系统拖放”方法在 JupyterLab 中仍然可以正常工作。JupyterLab 插入正确的 HTML 代码,将图像直接永久地嵌入到笔记本中,因此图像存储在 .ipynb 文件中。我在 Windows 10 Python 3.7.9 上运行 Jupyter Lab v2.2.7 在 JupyterLab 中仍然有效。我在 Windows 10 上使用 Python 3.7.9 运行 Jupyter Lab v2.2.7。

去年某个时候,这在 Jupyter Classic Notebook v6.1.5 中停止工作。我向 Jupyter Classic Notebook 开发人员报告了一个错误通知。

它在最新版本的 Jupyter Classic Notebook 中再次起作用。我刚刚在 2021 年 7 月 15 日在 v6.4 中尝试过。谢谢 Jupyter NB 经典开发者!!

于 2019-04-11T00:38:49.703 回答
30

如果要在Markdown 单元格中显示图像,请使用:

<img src="files/image.png" width="800" height="400">

如果要在代码单元格中显示图像,请使用:

from IPython.display import Image
Image(filename='output1.png',width=800, height=400)
于 2019-03-04T10:14:49.827 回答
27

[过时的]

IPython/Jupyter 现在支持扩展模块,可以通过复制粘贴或拖放插入图像。

https://github.com/ipython-contrib/IPython-notebook-extensions

拖放扩展似乎适用于大多数浏览器

https://github.com/ipython-contrib/IPython-notebook-extensions/tree/master/nbextensions/usability/dragdrop

但复制和粘贴仅适用于 Chrome。

于 2015-10-23T02:59:07.707 回答
15

首先确保您在 ipython 笔记本单元格中处于降价编辑模型中

这是其他人提出的方法的替代方法<img src="myimage.png">

![title](img/picture.png)

如果缺少标题,它似乎也可以工作:

![](img/picture.png)

请注意,路径中不应有引号。不确定这是否适用于带有空格的路径!

于 2016-07-27T19:38:30.813 回答
14

我将 IPython 笔记本与图像放在同一个文件夹中。我使用 Windows。图像名称是“phuong huong xac dinh.PNG”。

在降价:

<img src="phuong huong xac dinh.PNG">

代码:

from IPython.display import Image
Image(filename='phuong huong xac dinh.PNG')
于 2015-10-19T13:35:41.173 回答
11

在运行此代码之前,将默认块从“代码”更改为“Markdown”:

![<caption>](image_filename.png)

如果图像文件在另一个文件夹中,您可以执行以下操作:

![<caption>](folder/image_filename.png)
于 2019-09-24T15:28:46.613 回答
10

最新版本的 jupyter notebook 本机接受图像的复制/粘贴

于 2018-02-01T10:19:31.790 回答
4

对于那些寻找在 Jupyter 机器上放置图像文件以便可以从本地文件系统显示的位置的人。

我把我mypic.png

/root/Images/mypic.png

(即显示在 Jupyter 在线文件浏览器中的 Images 文件夹)

在这种情况下,我需要将以下行放入 Markdown 单元格中,以使我的图片显示在记事本中:

![My Title](Images/mypic.png)
于 2018-07-29T16:38:42.317 回答
3

minrk 的回答是正确的。

但是,我发现图像在打印视图中出现损坏(在我的 Windows 机器上,在 Chrome 浏览器中运行 IPython 版本 0.13.2 的 Anaconda 发行版)

解决方法是改为使用<img src="../files/image.png">

这使得图像在打印视图和正常的 iPython 编辑视图中都正确显示。

更新:在我升级到 iPython v1.1.0 时,不再需要这种解决方法,因为打印视图不再存在。事实上,您必须避免这种变通方法,因为它会阻止 nbconvert 工具查找文件。

于 2013-10-29T16:44:37.687 回答
0

我永远无法将“插入图像”放入降价单元格中工作。但是,拖放进入了与我的笔记本保存在同一目录中的png文件。它将此文本带入单元格

“”

shift + enter > 图像现在显示在笔记本中。

FWIW

于 2021-06-13T16:23:37.787 回答
-4

您可以在 jupyter notebook 中通过不带引号的“pwd”命令找到您当前的工作目录。

于 2019-11-13T13:10:18.063 回答