python在一张图上分别绘制4个子图,分别绘制圆形、正方形、三角形和直线
时间: 2024-04-01 21:37:50 浏览: 163
好的,以下是python代码实现:
```python
import matplotlib.pyplot as plt
import numpy as np
# 创建一个4x4的figure对象,包含4个子图
fig, axs = plt.subplots(nrows=2, ncols=2, figsize=(10, 10))
# 绘制圆形
axs[0, 0].set_title('Circle')
circle = plt.Circle((0, 0), 1, color='blue', fill=False)
axs[0, 0].add_artist(circle)
# 绘制正方形
axs[0, 1].set_title('Square')
square = plt.Rectangle((-1, -1), 2, 2, color='green', fill=False)
axs[0, 1].add_artist(square)
# 绘制三角形
axs[1, 0].set_title('Triangle')
triangle = plt.Polygon(np.array([[-1, -1], [1, -1], [0, 1]]), color='red', fill=False)
axs[1, 0].add_artist(triangle)
# 绘制直线
axs[1, 1].set_title('Line')
axs[1, 1].plot([-1, 1], [0, 0], color='purple', linewidth=3)
# 调整子图之间的间距
plt.subplots_adjust(wspace=0.4, hspace=0.4)
# 显示图形
plt.show()
```
以上代码会生成一个4x4的figure对象,包含四个子图。第一个子图绘制圆形,第二个子图绘制正方形,第三个子图绘制三角形,第四个子图绘制直线。每个子图都有一个标题。我们使用`add_artist`方法将圆形、正方形和三角形添加到对应的子图中,使用`plot`方法绘制直线。最后使用`subplots_adjust`方法调整子图之间的间距,并使用`show`方法显示图形。
阅读全文