Create a figure object and put two axes on it, ax1 and ax2. Located at [0,0,1,1] and [0.2,0.5,.2,.2] respectively
时间: 2024-10-09 12:02:32 浏览: 22
关于<Figure size 432x288 with 0 Axes>的解决
在Matplotlib库中,你可以创建一个figure对象,并在其上放置多个子图(Axes)。`ax1` 和 `ax2` 就是两个独立的子图。下面是如何操作的:
```python
import matplotlib.pyplot as plt
# 创建figure对象
fig = plt.figure()
# 定义子图的位置,左下角坐标和右上角坐标
ax1 = fig.add_axes([0, 0, 1, 1]) # 子图1占满整个figure
ax2 = fig.add_axes([0.2, 0.5, 0.2, 0.2]) # 子图2位于figure的右上部分,宽高分别为0.2和0.2
# 现在,ax1和ax2都是figure的不同部分,可以分别在这两个子图上绘制内容
# 对于ax1:
# ax1.plot(...)
# 对于ax2:
# ax2.scatter(...)
# 显示图形
plt.show()
```
这里我们使用了`add_axes()`函数来指定每个子图在figure中的位置。第一个数组 `[0, 0, 1, 1]` 指定的是左下角 `(0,0)`,宽度高度均为 `1`,即占据整个figure;而第二个数组 `[0.2, 0.5, 0.2, 0.2]` 则指定了子图2位于figure右侧 `0.2` 单位距离内,高度 `0.2`,在上方 `0.5` 单位距离处。
阅读全文