matplotlib中用单子图绘制多组柱形图
时间: 2023-07-12 10:49:21 浏览: 89
是的,您可以使用 Matplotlib 中的 `bar` 函数来绘制柱形图。如果您要在同一个子图中绘制多组柱形图,可以使用 `numpy` 库来生成多组数据,然后在同一个子图中调用 `bar` 函数。
以下是一个示例代码,用于绘制两组柱形图:
```python
import numpy as np
import matplotlib.pyplot as plt
# 生成数据
x = np.array([1, 2, 3, 4, 5])
y1 = np.array([5, 8, 3, 6, 4])
y2 = np.array([3, 5, 2, 7, 1])
# 创建子图
fig, ax = plt.subplots()
# 绘制第一组柱形图
ax.bar(x-0.2, y1, width=0.4, color='b', align='center')
# 绘制第二组柱形图
ax.bar(x+0.2, y2, width=0.4, color='g', align='center')
# 设置 x 轴标签
ax.set_xticks(x)
ax.set_xticklabels(['A', 'B', 'C', 'D', 'E'])
# 设置图例
ax.legend(['Group 1', 'Group 2'])
# 显示图形
plt.show()
```
运行上述代码,您将得到一个包含两组柱形图的子图。其中,每组柱形图由不同的颜色表示,图例标注了每组柱形图的名称。
相关问题
matplotlib 绘制组合柱状图
以下是使用matplotlib绘制组合柱状图的示例代码:
```python
import matplotlib.pyplot as plt
# 数据
categories = ['A', 'B', 'C', 'D']
values1 = [10, 15, 12, 8]
values2 = [8, 12, 10, 15]
# 绘制柱状图
plt.bar(categories, values1, label='Group 1')
plt.bar(categories, values2, label='Group 2', bottom=values1)
# 添加图例和标签
plt.legend()
plt.xlabel('Categories')
plt.ylabel('Values')
plt.title('Combined Bar Chart')
# 显示图形
plt.show()
```
这段代码会绘制一个组合柱状图,其中包含两组柱子。每组柱子都有四个类别,并且每个类别都有对应的值。第一组柱子表示"Group 1",第二组柱子表示"Group 2"。第二组柱子会堆叠在第一组柱子上方。
matplotlib 绘制柱状图
以下是使用Matplotlib绘制柱状图的示例代码:
```python
import matplotlib.pyplot as plt
# 定义x轴和y轴的数据
x = ['A', 'B', 'C', 'D']
y = [10, 20, 15, 25]
# 绘制柱状图
plt.bar(x, y)
# 添加标题和标签
plt.title('Bar Chart')
plt.xlabel('X-axis')
plt.ylabel('Y-axis')
# 显示图形
plt.show()
```
这段代码使用了Matplotlib的`bar`函数来绘制柱状图,其中`x`是x轴的数据,`y`是y轴的数据。然后使用`plt.bar(x, y)`来绘制柱状图。接着使用`plt.title`、`plt.xlabel`和`plt.ylabel`来添加标题和标签。最后使用`plt.show`来显示图形。
阅读全文