# knuth_bin_width¶

astropy.stats.knuth_bin_width(data, return_bins=False, quiet=True)[source] [edit on github]

Return the optimal histogram bin width using Knuth’s rule.

Knuth’s rule is a fixed-width, Bayesian approach to determining the optimal bin width of a histogram.

Parameters: data : array-like, ndim=1 observed (one-dimensional) data return_bins : bool (optional) if True, then return the bin edges quiet : bool (optional) if True (default) then suppress stdout output from scipy.optimize dx : float optimal bin width. Bins are measured starting at the first data point. bins : ndarray bin edges: returned if return_bins is True

Notes

The optimal number of bins is the value M which maximizes the function

$F(M|x,I) = n\log(M) + \log\Gamma(\frac{M}{2}) - M\log\Gamma(\frac{1}{2}) - \log\Gamma(\frac{2n+M}{2}) + \sum_{k=1}^M \log\Gamma(n_k + \frac{1}{2})$

where $$\Gamma$$ is the Gamma function, $$n$$ is the number of data points, $$n_k$$ is the number of measurements in bin $$k$$ [R99].

References

 [R99] (1, 2) Knuth, K.H. “Optimal Data-Based Binning for Histograms”. arXiv:0605197, 2006