我试图在大范围内的大数字列表中绘制整数频率。更具体地说:
ints = np.random.random_integers(0,1440,15000)
ints
是一个长整数列表,其值介于0和1440之间。接下来,我想绘制一个可视化频率的直方图。为此,我使用了类似的东西:
fig_per_hour = plt.figure()
per_hour = fig_per_hour.add_subplot(111)
counts, bins, patches = per_hour.hist(
ints, bins = np.arange(0,1441), normed = False, color = 'g',linewidth=0)
plt.show()
但我面临两个问题:
作为参考,这是我到目前为止的输出:
答案 0 :(得分:1)
我使用set_xlim
和较少数量的垃圾箱,例如bins = 100
:
from matplotlib import pyplot as plt
import numpy as np
ints = np.random.random_integers(0,1440,15000)
fig_per_hour = plt.figure()
per_hour = fig_per_hour.add_subplot(111)
counts, bins, patches = per_hour.hist(
ints, bins = 100, normed = False, color = 'g',linewidth=0)
plt.gca().set_xlim(ints.min(), ints.max())
plt.show()
修改:您可以手动调整窗口大小:
原则上,您可以使用plt.figure(figsize=(20, 2))
以编程方式执行此操作。但不知何故,窗口大小仅限于屏幕大小。