Zak*_*irn 2 matplotlib python-3.x
我正在绘制直方图,我在堆栈交换中发现这个效果很好: 离散值的直方图
这是发布在那里的代码:
import matplotlib.pyplot as plt
import numpy as np
data = range(11)
data = np.array(data)
d = np.diff(np.unique(data)).min()
left_of_first_bin = data.min() - float(d)/2
right_of_last_bin = data.max() + float(d)/2
plt.hist(data, np.arange(left_of_first_bin, right_of_last_bin + d, d))
plt.show()
Run Code Online (Sandbox Code Playgroud)
我在 d = 2.84e-5 的情况下使用它,上面 np.arrange() 的输出长度为 68704。如果我从 anaconda 环境中的 ubuntu 14.04 上的 python 解释器(python 3.5)运行它,系统会挂起,如果没有 ctrl-c 杀死解释器,我将无法恢复。我想知道 plt.hist() 中 bin 的大小是否有限制,或者这种方法是否存在固有的错误。如果有限制,我希望出现错误而不是挂起。如果 d 不是太小,代码工作正常。我的数据长度也可能对此产生影响,它是 22289。我想它可能只是在搅动而我等待的时间不够长?
我搜索了 matplotlib.pyplot.hist 限制和其他变化,但找不到任何东西。据我所知,文档没有提到限制。谢谢你。
看起来没有真正的挂起。它需要永远,因为数据太大而 bin 宽度太小。我注意到当 d=.001 时,在我的机器上渲染绘图需要大约 30 秒。很抱歉给您带来麻烦,我以为我发现了一个潜在的错误,并且作为新手感到很兴奋。
| 归档时间: |
|
| 查看次数: |
1876 次 |
| 最近记录: |