python 多张图放在一起加图例
时间: 2023-07-22 17:58:28 浏览: 202
要将多张图放在一起并添加图例,可以使用matplotlib的subplot函数来创建一个包含多个子图的图形布局。然后,在每个子图上使用相应的绘图函数进行绘制,并通过设置不同的位置参数将它们放在一起。最后,使用legend函数添加图例。
下面是一个简单的示例代码,演示如何在一个图形中绘制多张图并添加图例:
```python
import matplotlib.pyplot as plt
# 创建一个包含2行2列的图形布局,并指定当前子图为第一个子图
plt.subplot(2, 2, 1)
# 在第一个子图上绘制线图
plt.plot([1, 2, 3, 4], [1, 4, 9, 16], 'r-', label='Line 1')
# 在第一个子图上添加图例
plt.legend()
# 切换当前子图为第二个子图
plt.subplot(2, 2, 2)
# 在第二个子图上绘制散点图
plt.scatter([1, 2, 3, 4], [1, 4, 9, 16], c='b', label='Points')
# 在第二个子图上添加图例
plt.legend()
# 切换当前子图为第三个子图
plt.subplot(2, 2, 3)
# 在第三个子图上绘制柱状图
plt.bar([1, 2, 3, 4], [1, 4, 9, 16], color='g', label='Bars')
# 在第三个子图上添加图例
plt.legend()
# 切换当前子图为第四个子图
plt.subplot(2, 2, 4)
# 在第四个子图上绘制饼图
plt.pie([1, 4, 9, 16], labels=['A', 'B', 'C', 'D'], autopct='%1.1f%%', colors=['y', 'm', 'c', 'r'], startangle=90)
# 在第四个子图上添加图例
plt.legend()
# 调整子图之间的间距
plt.tight_layout()
# 显示图形
plt.show()
```
在这个例子中,我们创建了一个2行2列的图形布局,然后在每个子图上绘制不同类型的图表,并通过legend函数添加图例。最后使用tight_layout函数调整子图之间的间距,使得图形更加美观。运行代码后,将会显示一个包含多张图的图形,并在每张图上显示相应的图例。你可以根据自己的需求进行修改和扩展。
阅读全文