📅  最后修改于: 2023-12-03 15:22:14.350000             🧑  作者: Mango
Matplotlib 是一个 Python 的数据可视化库,提供了各种各样的绘图方式,例如线图、散点图、直方图、饼图等。它可以与 NumPy、Pandas 等 Python 数据处理库结合使用,非常适合数据分析和机器学习等领域。
Matplotlib 可以通过 pip 安装:
pip install matplotlib
接下来我们以绘制简单的折线图为例,介绍 matplotlib 的基本绘图流程。
首先,我们需要准备需要绘制的数据。在本例中,我们将准备 x 轴和 y 轴的数据:
import numpy as np
x = np.array([1, 2, 3, 4, 5])
y = np.array([2, 1, 4, 3, 5])
使用 Matplotlib 绘图,我们首先要创建一个图像对象。一般情况下,我们会创建一个包含一个或多个子图的图像对象:
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
这里,我们使用 plt.subplots()
函数创建一个图像对象 fig
,以及包含一个子图的轴对象 ax
。
接下来,我们可以通过 ax
对象绘制我们所需要的图像。例如,在本例中,我们可以使用 plot()
函数绘制折线图:
ax.plot(x, y)
同时,我们还可以通过 set()
函数设置轴的标签等属性:
ax.set(xlabel='x', ylabel='y', title='Line plot')
最后,我们可以使用 show()
函数将图像显示出来:
plt.show()
将上述步骤整合在一起,我们最终得到了如下的绘图代码:
import numpy as np
import matplotlib.pyplot as plt
x = np.array([1, 2, 3, 4, 5])
y = np.array([2, 1, 4, 3, 5])
fig, ax = plt.subplots()
ax.plot(x, y)
ax.set(xlabel='x', ylabel='y', title='Line plot')
plt.show()
运行上述代码,我们可以得到如下的折线图:
Matplotlib 支持多种绘图方式,下面列出其中的若干。
使用 scatter()
函数可以绘制散点图。与折线图类似,我们需要准备 x 轴和 y 轴的数据:
x = np.array([1, 2, 3, 4, 5])
y = np.array([2, 1, 4, 3, 5])
然后,创建一个图像对象和子图:
fig, ax = plt.subplots()
使用 scatter()
函数绘制散点图:
ax.scatter(x, y)
使用 hist()
函数可以绘制直方图。我们需要准备需要绘制的数据:
data = np.random.normal(0, 1, 1000)
然后,创建一个图像对象和子图:
fig, ax = plt.subplots()
使用 hist()
函数绘制直方图:
ax.hist(data, bins=30)
bins
参数表示将数据划分为多少个区间。
使用 pie()
函数可以绘制饼图。我们需要准备需要绘图的数据:
labels = ['A', 'B', 'C', 'D']
sizes = [15, 30, 45, 10]
然后,创建一个图像对象和子图:
fig, ax = plt.subplots()
使用 pie()
函数绘制饼图:
ax.pie(sizes, labels=labels, autopct='%1.1f%%')
其中,labels
参数表示饼图各部分的名称,autopct
参数表示将数值转换为百分比的格式。
Matplotlib 是一个功能强大的数据可视化库,本文只介绍了其中的几种绘图方式。如果你有更多需求,查阅 Matplotlib 的官方文档将会非常有帮助。