📜  Python中的 Matplotlib.axes.Axes.cla()(1)

📅  最后修改于: 2023-12-03 15:19:23.900000             🧑  作者: Mango

Python中的 Matplotlib.axes.Axes.cla()

在Matplotlib中,Axes是图表的一个重要组成部分,是绘图区域的容器。Axes上的各种元素(如线条、刻度线、坐标轴等)都是Artist,可以被操作,定制图表样式。

Matplotlib.axes.Axes.cla()是Axes类的一个成员方法,用于清除当前Axes的所有内容。比如,当我们想要在同一个Axes上绘制多个图形时,可以使用该方法清空原有图形。

语法
class matplotlib.axes.Axes(fig, rect, facecolor=None, **kwargs)

Axes.cla()
  • fig: Figure类实例
  • rect: [left, bottom, width, height],表示绘图区域的定位和大小
  • facecolor: 绘图区域的颜色,默认None
示例
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中的内容,并绘制出一条新的函数图像,并再次对图形进行了一些定制化处理。

注意事项
  • Axes.cla()方法会清除当前Axes中的所有内容,包括坐标轴标签、刻度线、数据图形等;
  • 该方法清除的是当前Axes,而不是整个Figure。如果需要删除整个Figure中的内容,可以使用Figure.clf()方法;
  • 在使用cla方法清空Axes后,需要重新设置坐标轴、添加图形元素等。