创建一个0~5的数组,将其作为x轴的数据,再创建两个2行6列的二维数组(1~50内随机整数),在指定编号为1的子图上,绘制两个颜色不同的柱形图。
时间: 2024-03-18 22:45:17 浏览: 85
动态数组点云数据处理
好的,我来解答你的问题。
以下是 Python 代码实现:
```python
import numpy as np
import matplotlib.pyplot as plt
# 创建x轴数据
x = np.arange(6)
# 创建两个二维数组
arr1 = np.random.randint(1, 51, size=(2, 6))
arr2 = np.random.randint(1, 51, size=(2, 6))
# 创建图表
fig, ax = plt.subplots()
# 绘制柱形图
ax.bar(x, arr1[0], color='blue', label='arr1')
ax.bar(x, arr2[0], color='red', bottom=arr1[0], label='arr2')
# 添加图例
ax.legend()
# 显示图表
plt.show()
```
解释一下代码:
首先使用 NumPy 库创建了一个数组 `x`,它包含了 0~5 的整数。接着,我们使用 `np.random.randint` 函数创建了两个二维数组 `arr1` 和 `arr2`,它们的元素都是 1~50 之间的随机整数。
然后,我们使用 Matplotlib 库创建了一个图表 `fig` 和一个子图 `ax`。使用 `ax.bar` 函数在子图上绘制了两个柱形图,分别对应 `arr1` 和 `arr2` 数组的第一行。其中,`color` 参数指定颜色,`label` 参数指定标签,`bottom` 参数指定柱形图的起始位置。
最后,我们使用 `ax.legend` 函数添加图例,并使用 `plt.show` 函数显示图表。
运行上述代码,即可得到如下图所示的柱形图:
![柱形图](https://img-blog.csdnimg.cn/20211014165119934.png)
阅读全文