matplotlib同时画多个图
时间: 2023-07-04 16:07:59 浏览: 70
可以使用Matplotlib的子图(subplot)功能来同时画多个图。子图是一个在主图中的小图,可以用来展示多个相关的图表或数据。以下是一个例子:
```python
import matplotlib.pyplot as plt
import numpy as np
# 创建数据
x = np.linspace(0, 10, 100)
y1 = np.sin(x)
y2 = np.cos(x)
# 创建一个2行1列的子图
fig, axs = plt.subplots(2, 1, figsize=(8, 6))
# 在第一个子图中绘制sin(x)
axs[0].plot(x, y1)
axs[0].set_title('Sin(x)')
# 在第二个子图中绘制cos(x)
axs[1].plot(x, y2)
axs[1].set_title('Cos(x)')
# 显示图像
plt.show()
```
在这个例子中,我们创建了一个2行1列的子图,每个子图都可以使用 `axs` 数组中的索引来访问。我们在第一个子图中绘制了sin(x)的图像,在第二个子图中绘制了cos(x)的图像。最后,我们使用 `plt.show()` 方法显示图形。
相关问题
pandas matplotlib同时画多个图
使用matplotlib中的subplot函数可以在同一画布上绘制多个图,而pandas中的plot函数可以方便地将数据绘制成图形。
以下是一个示例代码,展示如何使用pandas和matplotlib同时绘制多个图:
```python
import pandas as pd
import matplotlib.pyplot as plt
# 读取数据
df = pd.read_csv('data.csv')
# 创建figure对象,并设置图像大小
fig = plt.figure(figsize=(10, 8))
# 在figure对象上创建多个子图
ax1 = fig.add_subplot(2, 2, 1)
ax2 = fig.add_subplot(2, 2, 2)
ax3 = fig.add_subplot(2, 2, 3)
ax4 = fig.add_subplot(2, 2, 4)
# 绘制第一个子图
df.plot(x='date', y='value1', ax=ax1)
ax1.set_title('Value 1')
# 绘制第二个子图
df.plot(x='date', y='value2', ax=ax2)
ax2.set_title('Value 2')
# 绘制第三个子图
df.plot(x='date', y='value3', ax=ax3)
ax3.set_title('Value 3')
# 绘制第四个子图
df.plot(x='date', y='value4', ax=ax4)
ax4.set_title('Value 4')
# 调整子图之间的间距
plt.subplots_adjust(wspace=0.3, hspace=0.3)
# 显示图像
plt.show()
```
代码中,首先读取一个包含四列数据的CSV文件,然后创建了一个10x8的画布,并使用subplot函数创建了四个子图。接下来,使用pandas的plot函数在每个子图上绘制一列数据,并在每个子图上设置了标题。最后,使用subplots_adjust函数调整子图之间的间距,然后显示图像。
matplotlib如何画多个矩形
要画多个矩形,可以使用Matplotlib中的`Rectangle`对象和`add_patch`方法。以下是一个简单的示例代码:
```python
import matplotlib.pyplot as plt
from matplotlib.patches import Rectangle
# 创建一个Figure对象和一个Axes对象
fig, ax = plt.subplots()
# 创建多个Rectangle对象并添加到Axes对象中
rect1 = Rectangle((0.2, 0.2), 0.5, 0.3, color='r')
rect2 = Rectangle((0.5, 0.5), 0.3, 0.4, color='g')
rect3 = Rectangle((0.1, 0.6), 0.4, 0.2, color='b')
ax.add_patch(rect1)
ax.add_patch(rect2)
ax.add_patch(rect3)
# 设置坐标轴范围和标题
ax.set_xlim(0, 1)
ax.set_ylim(0, 1)
ax.set_title('Multiple Rectangles')
# 显示图形
plt.show()
```
这个代码将在一个图形中画出三个矩形,每个矩形的位置、大小和颜色都不同。你可以根据需要修改代码来画出你想要的矩形。
阅读全文
相关推荐













