python plot画两个图在一张画布
时间: 2023-05-04 16:04:05 浏览: 142
python实现在一个画布上画多个子图
Python中的matplotlib库提供了丰富的绘图功能,可以用于绘制各种类型的图形,例如折线图、散点图、柱状图等。如果想要在同一张画布上绘制两个图形,可以使用matplotlib库中的subplot()函数。
首先,需要导入matplotlib库和numpy库,代码如下:
```
import matplotlib.pyplot as plt
import numpy as np
```
然后,可以使用numpy库生成一些数据用于绘制图形,例如:
```
x = np.linspace(0, 10, 100)
y1 = np.sin(x)
y2 = np.cos(x)
```
这里使用了numpy库的linspace()函数生成从0到10之间均匀分布的100个数,作为x轴的坐标,然后分别计算了y1和y2的值,用于绘制两个不同的图形。
接下来,可以使用subplot()函数将两个图形绘制在同一张画布上。subplot()函数的第一个参数表示总行数,第二个参数表示总列数,第三个参数表示当前正在绘制的图形所在的位置。例如,可以将画布分为2行1列,当前正在绘制第一个图形,代码如下:
```
plt.subplot(2, 1, 1)
plt.plot(x, y1)
```
其中,plt.plot()函数用于绘制折线图,第一个参数表示x轴坐标,第二个参数表示y轴坐标,这里使用了生成的x和y1数组。
绘制第二个图形的代码与第一个相似,只需要将subplot()函数的第三个参数改为2,代码如下:
```
plt.subplot(2, 1, 2)
plt.plot(x, y2)
```
最后,需要使用plt.show()函数显示绘制出的图形,完整的代码如下:
```
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 10, 100)
y1 = np.sin(x)
y2 = np.cos(x)
plt.subplot(2, 1, 1)
plt.plot(x, y1)
plt.subplot(2, 1, 2)
plt.plot(x, y2)
plt.show()
```
运行代码后,就可以在同一张画布上绘制出两个图形了。
阅读全文