📅  最后修改于: 2023-12-03 15:06:31.704000             🧑  作者: Mango
在使用 Jupyter Notebook 进行数据分析或机器学习等任务时,我们有时需要将图像保存下来,以便后续使用或分享给他人。本文将介绍如何从 Jupyter Notebook 中使用 Python 代码保存图像。
Matplotlib 是 Python 中常用的绘图库,可以用于绘制各种类型的图表,例如线图、散点图、柱状图等。通过 Matplotlib,我们可以很方便地将图像保存为图片文件。
以下是一个简单的示例,演示如何在 Jupyter Notebook 中使用 Matplotlib 绘制一张简单的折线图,并将其保存为图片文件:
import matplotlib.pyplot as plt
import numpy as np
# 生成数据
x = np.linspace(0, 10, 100)
y = np.sin(x)
# 绘制图像
plt.plot(x, y)
# 保存图像为 PNG 格式
plt.savefig('output.png', dpi=300, bbox_inches='tight')
上述代码先生成了一个包含 100 个元素的一维数组 x,以及对应的正弦值数组 y。然后使用 plt.plot()
方法绘制了一张包含这些数据的折线图。最后,使用 plt.savefig()
方法将图像保存为一个名为 output.png
的 PNG 图片文件。其中 dpi=300
表示设置输出图像的 DPI,bbox_inches='tight'
表示自动裁剪图像周围多余的空白部分。
Seaborn 是一个基于 Matplotlib 的高级数据可视化库,可以帮助我们快速、美观地绘制各种类型的图表。Seaborn 的 API 设计更加简单,可以轻松地将数据与可视化元素映射起来。在使用 Seaborn 绘制图像时,同样可以使用 Matplotlib 的方法将图像保存为图片文件。
以下是一个示例,演示如何使用 Seaborn 绘制一张简单的散点图,并将其保存为图片文件:
import seaborn as sns
# 加载示例数据集
tips = sns.load_dataset('tips')
# 绘制散点图
sns.scatterplot(x='total_bill', y='tip', data=tips)
# 保存图像为 JPG 格式
plt.savefig('output.jpg', dpi=300, bbox_inches='tight')
上述代码使用 sns.load_dataset()
方法加载了 Seaborn 提供的餐厅小费数据集,并使用 sns.scatterplot()
方法绘制了一个以账单金额为 x 轴,小费金额为 y 轴的散点图。最后,使用 Matplotlib 的 plt.savefig()
方法保存图像为一个名为 output.jpg
的 JPG 图片文件。
Bokeh 是一个交互式数据可视化库,可以帮助我们在 Web 应用程序中创建漂亮的、交互式的图形界面。在使用 Bokeh 绘制图形时,我们可以使用 save()
方法将绘制的图形保存为 HTML 文件或其它支持的文件格式。
以下是一个示例,演示如何使用 Bokeh 绘制一张简单的柱状图,并将其保存为 HTML 文件:
from bokeh.plotting import figure, output_file, save
# 创建一个绘图对象
p = figure(x_range=['a', 'b', 'c'], plot_height=250)
# 添加数据
p.vbar(x=['a', 'b', 'c'], top=[1, 2, 3], width=0.9)
# 指定输出文件名
output_file('output.html')
# 保存图像为 HTML 文件
save(p)
上述代码首先使用 Bokeh 提供的 figure()
方法创建了一个新的绘图对象,然后使用 vbar()
方法添加了三个柱状图。接下来,使用 output_file()
方法指定输出文件名为 output.html
,最后使用 save()
方法将绘制的图形保存为该文件。
本文介绍了如何从 Jupyter Notebook 中使用 Python 代码保存图像,主要分为三个部分:Matplotlib、Seaborn 和 Bokeh。通过这些库,我们可以方便、快捷、美观地将数据可视化,为数据分析和机器学习等任务提供便利。