matplotlib 3.5.1

>>> """
==============================================
Some features of the histogram (hist) function
==============================================

In addition to the basic histogram, this demo shows a few optional features:

* Setting the number of data bins.
* The *density* parameter, which normalizes bin heights so that the integral of
  the histogram is 1. The resulting histogram is an approximation of the
  probability density function.

Selecting different bin counts and sizes can significantly affect the shape
of a histogram. The Astropy docs have a great section_ on how to select these
parameters.

.. _section: http://docs.astropy.org/en/stable/visualization/histogram.html
"""
... 
... import numpy as np
... import matplotlib.pyplot as plt
... 
... np.random.seed(19680801)
... 
... # example data
... mu = 100 # mean of distribution
... sigma = 15 # standard deviation of distribution
... x = mu + sigma * np.random.randn(437)
... 
... num_bins = 50
... 
... fig, ax = plt.subplots()
... 
... # the histogram of the data
... n, bins, patches = ax.hist(x, num_bins, density=True)
... 
... # add a 'best fit' line
... y = ((1 / (np.sqrt(2 * np.pi) * sigma)) *
...  np.exp(-0.5 * (1 / sigma * (bins - mu))**2))
... ax.plot(bins, y, '--')
... ax.set_xlabel('Smarts')
... ax.set_ylabel('Probability density')
... ax.set_title(r'Histogram of IQ: $\mu=100$, $\sigma=15$')
... 
... # Tweak spacing to prevent clipping of ylabel
... fig.tight_layout()
... plt.show()
... 
... #############################################################################
... #
... # .. admonition:: References
... #
... # The use of the following functions, methods, classes and modules is shown
... # in this example:
... #
... # - `matplotlib.axes.Axes.hist` / `matplotlib.pyplot.hist`
... # - `matplotlib.axes.Axes.set_title`
... # - `matplotlib.axes.Axes.set_xlabel`
... # - `matplotlib.axes.Axes.set_ylabel`
...