如何将图片与Jupyter Notebook合并为单个文件?
将图片嵌入Jupyter Notebook以合并为单个文件
当然可以,以下是几种实用的方法把图片整合进.ipynb文件,无需额外的独立图片文件:
方法1:在Markdown单元格中嵌入Base64编码的图片
把图片转换成Base64字符串后直接写入Markdown,步骤如下:
- 用Python代码生成图片的Base64编码(以PNG为例):
import base64 with open("your_image.png", "rb") as img_file: base64_str = base64.b64encode(img_file.read()).decode() print(base64_str)
- 复制输出的编码字符串,在Markdown单元格中插入:
<img src="data:image/png;base64,这里粘贴刚才的Base64编码字符串" alt="描述文字">
方法2:在代码单元格中直接显示嵌入的图片
用IPython的display模块加载Base64编码的图片,代码示例:
from IPython.display import Image import base64 with open("your_image.png", "rb") as img_file: base64_str = base64.b64encode(img_file.read()).decode() Image(data=base64_str, format='png')
运行这个单元格后,图片会直接显示在Notebook里,且数据已嵌入.ipynb文件。
方法3:直接拖拽图片到Markdown单元格(新版Jupyter)
如果使用较新版本的Jupyter Notebook或JupyterLab,直接把本地图片拖拽到Markdown单元格中,系统会自动将图片转换为Base64编码并嵌入,不需要手动处理编码。
注意事项
- Base64编码会让图片体积增大约30%,如果是大尺寸图片,嵌入后可能导致Notebook文件过大、打开变慢。
- 嵌入后的Notebook可以直接分享,接收方不需要额外下载图片文件。
内容的提问来源于stack exchange,提问作者Mohammad Salah
相关产品推荐
相关产品推荐

