📅  最后修改于: 2023-12-03 15:19:23.900000             🧑  作者: Mango
在Matplotlib中,Axes是图表的一个重要组成部分,是绘图区域的容器。Axes上的各种元素(如线条、刻度线、坐标轴等)都是Artist,可以被操作,定制图表样式。
Matplotlib.axes.Axes.cla()是Axes类的一个成员方法,用于清除当前Axes的所有内容。比如,当我们想要在同一个Axes上绘制多个图形时,可以使用该方法清空原有图形。
class matplotlib.axes.Axes(fig, rect, facecolor=None, **kwargs)
Axes.cla()
import numpy as np
import matplotlib.pyplot as plt
# 创建Figure和Axes
fig = plt.figure()
ax = fig.add_subplot(111)
# 绘制函数图像
x = np.linspace(0, 10, 100)
y = np.sin(x)
ax.plot(x, y, label='sin(x)')
# 修改x轴刻度
ax.set_xticks([0, 5, 10])
# 绘制散点图
x = np.random.normal(5, 2, size=100)
y = np.random.normal(5, 1, size=100)
ax.scatter(x, y, color='red', label='random points')
# 添加图例和标题
ax.legend()
ax.set_title('Demo')
# 清空Axes
ax.cla()
# 绘制新的函数图像
x = np.linspace(-5, 5, 100)
y = x**2
ax.plot(x, y, label='x^2')
# 修改x轴刻度
ax.set_xticks([-5, 0, 5])
# 添加图例和标题
ax.legend()
ax.set_title('New Demo')
# 显示图形
plt.show()
上述代码演示了如何在同一个Axes上绘制不同的图形。首先,我们创建Figure和Axes实例。然后,使用plot方法和scatter方法分别绘制了函数图像和散点图,并对图形进行了一些定制化处理。接下来,使用cla方法清空当前Axes中的内容,并绘制出一条新的函数图像,并再次对图形进行了一些定制化处理。