如何在Python中一次创建一个数据点的直方图?

时间:2019-06-03 18:39:30

标签: python

我需要在python 3中创建一个非常大的数据集的直方图。但是,我不能使用列表来创建直方图,因为鉴于我的数据,该列表太大了。我需要一种在创建每个数据点时更新直方图的方法。这样,我的计算机只能处理一个点并更新绘图。

我一直在使用matplotlib。尝试了plt.draw()但无法使其正常工作。 (请参见下面的代码)

#Proof of concept code

l = [1, 2, 3, 2, 3, 2]
n = 0
p = False
for x in range(0,6):
  n = l[x]
  if p == False:
    fig = plt.hist(n)
    p = True
  else:
    plt.draw()

我需要一个看起来像plt.hist(l)的情节。但是只是得到了第一点。

1 个答案:

答案 0 :(得分:0)

您熟悉Numpy吗? Numpy可以很好地处理大型数组。

下面是一个使用1到3(包括1和3)之间的随机整数的示例。

import matplotlib.pyplot as plt
import numpy as np

arr_random = np.random.randint(1,4,10000)
plt.hist(arr_random)
plt.show()

使用Numpy数组计算plt.hist()非常有效。