require 'pycall/import' include PyCall::Import pyimport 'numpy', as: 'np' # FIXME: MacOSX backend is not usable through pycall. I want to fix this issue but the reason is unclear. pyimport 'matplotlib', as: :mp mp.rcParams[:backend] = 'TkAgg' if mp.rcParams[:backend] == 'MacOSX' pyimport 'matplotlib.mlab', as: 'mlab' pyimport 'matplotlib.pyplot', as: 'plt' np.random.seed.(0) mu = 100 sigma = 15 x = mu + sigma * np.random.randn.(437) num_bins = 50 fig, ax = plt.subplots.() n, bins, patches = ax.hist.(x, num_bins, normed: 1) y = mlab.normpdf.(bins, mu, sigma) ax.plot.(bins, y, '--') ax.set_xlabel.('Smarts') ax.set_ylabel.('Probability density') ax.set_title.('Histogram of IQ: $\mu=100$, $\sigma=15$') fig.tight_layout.() plt.show.()