matplotlib多组柱形图
时间: 2024-07-30 10:01:20 浏览: 97
Matplotlib是一个广泛使用的Python数据可视化库,用于创建各种图表,包括柱状图。如果你需要绘制多组柱状图,可以利用它的`bar()`函数,配合`subplots()`或者`gridspec`等模块来组织布局。
下面是一个简单的例子,展示如何创建两组并排的柱状图:
```python
import matplotlib.pyplot as plt
import numpy as np
# 假设我们有三组数据
group1 = [20, 35, 45, 60]
group2 = [15, 28, 37, 52]
group3 = [10, 20, 25, 35]
# 创建一个新的图形,并设置宽度
fig, ax = plt.subplots()
width = 0.35 # 柱子之间的间隔
# 绘制第一组柱状图
ax.bar(np.arange(len(group1)), group1, width, label='Group 1')
# 重置x轴的位置,然后绘制第二组柱状图
ax.set_position([0, 0, 1, 1]) # 重新调整位置
ax.bar(np.arange(len(group2)) + width, group2, width, label='Group 2')
# 绘制第三组柱状图
ax.set_position([0, 0, 1, 1]) # 再次调整位置
ax.bar(np.arange(len(group3)) + (width * 2), group3, width, label='Group 3')
# 添加标题、标签和图例
ax.set_title('Multi-bar chart')
ax.set_xlabel('Categories')
ax.set_ylabel('Values')
ax.legend()
# 显示图形
plt.show()
阅读全文