matplotlib中将各数出现的次数绘制为一条线
时间: 2023-10-14 07:47:30 浏览: 30
要将一组数据中各元素出现的次数绘制成一条线图,您可以使用`plt.plot`函数和`np.histogram`函数来实现。下面是一个示例代码:
```python
import matplotlib.pyplot as plt
import numpy as np
# 数据
data = [1, 2, 3, 3, 4, 4, 4, 5, 5, 5, 5]
# 计算各元素出现的次数
counts, bins = np.histogram(data, bins=np.arange(min(data), max(data)+2))
# 绘制线图
plt.plot(bins[:-1], counts)
# 显示图形
plt.show()
```
在这个示例中,我们使用`np.histogram`函数计算了数据 `[1, 2, 3, 3, 4, 4, 4, 5, 5, 5, 5]` 中各元素出现的次数,并将结果存储在 `counts` 和 `bins` 变量中。然后,我们使用`plt.plot`函数将 `bins[:-1]`(即每个元素的取值)作为 x 轴数据,`counts`(即每个元素出现的次数)作为 y 轴数据,绘制成一条线图。最后,使用 `plt.show()` 函数显示图形。
您可以根据自己的实际数据进行修改。
相关问题
matplotlib,获取当前图片上已经绘制的曲线的条数
可以使用`len()`函数获取当前图片上已经绘制的曲线的条数。在`matplotlib`中,每一个曲线都被视为一个`Line2D`对象,可以使用`ax.lines`来获取当前图片上的所有`Line2D`对象,然后通过`len()`函数获取曲线的条数。下面是一个例子:
```python
import matplotlib.pyplot as plt
# 绘制两条曲线
x = [1, 2, 3, 4]
y1 = [2, 4, 6, 8]
y2 = [1, 3, 5, 7]
plt.plot(x, y1)
plt.plot(x, y2)
# 获取当前图片上已经绘制的曲线的条数
num_lines = len(plt.gca().lines)
print("当前图片上已经绘制的曲线的条数为:", num_lines)
```
输出结果为:
```
当前图片上已经绘制的曲线的条数为: 2
```
matplotlib绘制多条线
在同一张图中,应该怎么做?
要在同一张图中绘制多条线,可以使用 matplotlib 的 subplot 函数来创建多个子图,每个子图绘制一条线。具体步骤如下:
1. 创建画布和子图
```
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
```
2. 绘制第一条线
```
x1 = [1, 2, 3, 4]
y1 = [1, 4, 9, 16]
ax.plot(x1, y1, label='line 1')
```
3. 绘制第二条线
```
x2 = [1, 2, 3, 4]
y2 = [2, 5, 10, 17]
ax.plot(x2, y2, label='line 2')
```
4. 添加图例和标签
```
ax.legend()
ax.set_xlabel('x')
ax.set_ylabel('y')
ax.set_title('Multiple Lines')
```
5. 显示图形
```
plt.show()
```
注意:在第二步和第三步中,调用 `ax.plot` 函数绘制线时,指定了每个线的标签,用于显示图例。在第四步中,调用 `ax.legend` 函数显示图例,调用 `ax.set_xlabel` 和 `ax.set_ylabel` 函数设置坐标轴标签,调用 `ax.set_title` 函数设置图形标题。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)