यदि आप अधिक पूर्ण कार्य (या इस मामले में गैर-कार्यशील) उदाहरण देते हैं, तो यह अधिक उपयोगी होगा।
मैंने निम्नलिखित कोशिश की:
import numpy as np
import matplotlib.pyplot as plt
x = np.random.randn(1000)
fig = plt.figure()
ax = fig.add_subplot(111)
n, bins, rectangles = ax.hist(x, 50, density=True)
fig.canvas.draw()
plt.show()
यह वास्तव में एक वाई-अक्ष के साथ एक बार-चार्ट हिस्टोग्राम का उत्पादन करेगा जो इससे जाता है [0,1]
।
इसके अलावा, के अनुसार hist
प्रलेखन (यानी ax.hist?
से ipython
), मुझे लगता है कि योग भी ठीक है:
*normed*:
If *True*, the first element of the return tuple will
be the counts normalized to form a probability density, i.e.,
``n/(len(x)*dbin)``. In a probability density, the integral of
the histogram should be 1; you can verify that with a
trapezoidal integration of the probability density function::
pdf, bins, patches = ax.hist(...)
print np.sum(pdf * np.diff(bins))
ऊपर दिए गए आदेशों के बाद इसे आज़माएं:
np.sum(n * np.diff(bins))
मुझे 1.0
उम्मीद के मुताबिक रिटर्न वैल्यू मिल रही है। याद रखें कि normed=True
इसका मतलब यह नहीं है कि प्रत्येक बार में मूल्य का योग एकता होगा, बल्कि बार पर अभिन्न होने के बजाय एकता है। मेरे मामले में np.sum(n)
लगभग लौट आए 7.2767
।