在上一篇博客(链接: https://blog.csdn.net/XQC_KKK/article/details/123629093.)中讲到:在超越了共享边界,创建子图时将删除任何重叠的预先存在的子图。有一个matplotlib.pyplot.axes 方法可以解决超出边界删除前面图片的问题。这里就尝试使用该方法。
Matplotlib提供了axes() (轴域)函数生成一个标准的坐标轴对象,该函数可以传入4个元素的列表[left,bottom,width,height],指定图形在坐标系中的位置。坐标系左下角到右上角从0到1变化。
案例1:
import matplotlib.pyplot as plt
ax1 = plt.axes()
ax2 = plt.axes([0.5, 0.5, 0.2, 0.2])
plt.show()
案例2:
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 10)
fig = plt.figure()
ax1 = plt.axes([0.1, 0.5, 0.8, 0.4], xticklabels=[], ylim=(-1.2, 1.2))
plt.plot(np.sin(x))
ax2 = plt.axes([0.1, 0.1, 0.8, 0.4], ylim=(-1.2, 1.2))
plt.plot(np.cos(x))
plt.show()
注意:这里的xticklabels=[] 的作用是去除横轴的刻度标签,由于下图的覆盖,所以可加可不加。
|