没有绘制直方图

时间:2017-07-26 09:37:19

标签: python matplotlib

data = [1, 2, 1, 3, 3, 1, 4, 2]
print("mean : ",np.mean(data))
print("Standard deviation : ",np.std(data))
print("max : ",np.max(data))
print("min : ",np.min(data))
import matplotlib.pyplot as plt
plt.interactive(True)

plt.show(data)

这是我在pycharm中绘制直方图的代码,但它没有显示任何内容,只是打印print语句。需要帮助!

4 个答案:

答案 0 :(得分:2)

您必须绘制直方图,方法如下:

from matplotlib.pyplot import subplots, show

data = [1, 2, 1, 3, 3, 1, 4, 2]

fig, ax = subplots()
ax.hist(data)

show()

答案 1 :(得分:1)

您必须先使用plt.plot(data)创建一个情节,然后使用plt.show()进行显示。要绘制直方图,请在plt.hist(data)之前调用plt.show()

答案 2 :(得分:1)

你必须告诉matplotlib你想要绘制的内容 - 在这种情况下,是data的直方图。

data = [1, 2, 1, 3, 3, 1, 4, 2]
print("mean : ",np.mean(data))
print("Standard deviation : ",np.std(data))
print("max : ",np.max(data))
print("min : ",np.min(data))
import matplotlib.pyplot as plt
plt.interactive(True)
plt.hist(data)
plt.show(data)

答案 3 :(得分:1)

你不应该使用plt.interactive(True)这个问题,你可以使用plt.interactive(False)。然后你可以运行代码,你将显示graph

from matplotlib import pyplot as plt
from numpy import asarray

data = asarray([1, 2, 1, 3, 3, 1, 4, 2])

print("mean : ", data.mean())
print("Standard deviation : ", data.std())
print("max : ", data.max())
print("min : ", data.min())

# plt.interactive(True)
plt.interactive(False)

plt.plot(data)
plt.show()

#plot histogram
plt.hist(data)
plt.show()