以与plt.hist(histt​​ype ='step')相同的样式绘制普通绘图

时间:2019-04-08 09:33:40

标签: matplotlib

pyplot中的plt.hist()方法可以在调用时创建“阶梯式”绘图样式

plt.hist(data, histtype='step')

enter image description here

,但是绘制未经处理的原始数据的普通方法(plt.plot(),plt.scatter()等)显然没有样式选项来获得相同的结果。我的目标是使用该样式绘制一组给定的点,而无需对这些点进行直方图绘制。

使用标准库方法绘制给定的二维点集是否可以实现?

我还认为,至少有一个hack(生成一个伪造的分布,其直方图等于我们的数据)和一个“低级”解决方案来手动绘制每个细分,但是这些方法似乎都不是很有利。 / p>

1 个答案:

答案 0 :(得分:1)

也许您正在寻找drawstyle="steps"

import numpy as np; np.random.seed(42)
import matplotlib.pyplot as plt

data = np.cumsum(np.random.randn(10))

plt.plot(data, drawstyle="steps")

plt.show()

enter image description here

请注意,这与直方图略有不同,因为线的末端不会变为零。