我想包括在木星笔记本图像。

如果我做了以下操作,它就会起作用:

from IPython.display import Image
Image("img/picture.png")

但我想包括在markdown单元格和下面的代码给出一个404错误的图像:

![title]("img/picture.png")

我也试过

![texte]("http://localhost:8888/img/picture.png")

但我仍然得到相同的错误:

404 GET /notebooks/%22/home/user/folder/img/picture.png%22 (127.0.0.1) 2.74ms referer=http://localhost:8888/notebooks/notebook.ipynb

当前回答

如果你想使用Jupyter Notebook API(而不是IPython API),我找到了ipywidgets Jupyter的子项目。您有一个Image小部件。Docstring指定你有一个值参数,它是一个字节。所以你可以这样做:

import requests
from ipywidgets import Image

Image(value=requests.get('https://octodex.github.com/images/yaktocat.png').content)

我同意,使用Markdown风格更简单。它向你展示了Image display Notebook API。还可以使用宽度和高度参数调整图像的大小。

其他回答

下面是Jupyter和Python3的解决方案:

我把我的图片放在一个名为ImageTest的文件夹中。 我的目录是:

C:\Users\MyPcName\ImageTest\image.png

为了显示图像,我使用了这个表达式:

![title](/notebooks/ImageTest/image.png "ShowMyImage")

还要注意/和\

我很惊讶这里没有人提到html单元格魔法选项。 从文档(IPython,但同样为Jupyter)

% % html 将单元格呈现为HTML块

我对这个主题做了一些研究,并找到了在Jupyter Notebook中插入图像的4种方法,我在文章中描述过。

1. 拖放图像到单元格(最简单!)

请将单元格切换为markdown类型,然后将图像拖放到那里。图像将被内部编码为Base64,其文本表示形式将包含在ipynb文件中。我建议只对小图像使用此方法,因为您的笔记本ipynb文件可能会变得非常大且滞后(如果放入太多大图像)。

2. 插入托管映像

将图像上传到服务器(可能是Imgur或GitHub),并在Markdown中输入图像URL:

![alternative text goes here](path-to-the-image)

3.插入本地文件映像

您可以对本地映像使用上述方法,但它需要具有与笔记本相同的根目录。

在Markdown:

![alternative text](path-to-image)

或者你可以使用Python:

from IPython import display
display.Image("path-to-image")

将图像转换为Base64(仅适用于小图像)

与第一步类似,不同之处在于转换到Base64是手动完成的。

Python代码:

from IPython import display
from base64 import b64decode
base64_data = "iVBORw0KGgoAAAANSUhEUgAABL ...  the rest of data "
display.Image(b64decode(base64_data))

应该用于相当小的图像。

我个人对GitHub存储库中托管的图像使用第二种方法。

如果你想使用Jupyter Notebook API(而不是IPython API),我找到了ipywidgets Jupyter的子项目。您有一个Image小部件。Docstring指定你有一个值参数,它是一个字节。所以你可以这样做:

import requests
from ipywidgets import Image

Image(value=requests.get('https://octodex.github.com/images/yaktocat.png').content)

我同意,使用Markdown风格更简单。它向你展示了Image display Notebook API。还可以使用宽度和高度参数调整图像的大小。

我知道这不是完全相关的,但由于这个答案是第一次当你搜索“如何显示图像在Jupyter”,请考虑这个答案。

您可以使用matplotlib显示如下所示的图像。

import matplotlib.pyplot as plt
import matplotlib.image as mpimg
image = mpimg.imread("your_image.png")
plt.imshow(image)
plt.show()