@@ -0,0 +1,927 @@
+import itertools%0A%0Afrom mpl_toolkits.mplot3d import Axes3D # pylint: disable=unused-import%0Afrom matplotlib import pyplot as plt%0Aimport numpy as np%0A%0A# Plot in procedure pattern credits:%0A# https://github.com/joferkington/oost_paper_code/blob/master/error_ellipse.py%0Adef plot_cum_hist_devel(xss, ax=None):%0A    all_xs = np.hstack(xss)%0A    run_of_x = np.hstack(%5Bnp.full(len(xs), n_run)%0A                        for n_run, xs in enumerate(xss)%5D)%0A    hist, x_edges, y_edges = np.histogram2d(all_xs, run_of_x,%0A                                            bins=%5B51, len(xss) // 4%5D)%0A    hist = hist.T%0A    cum_hist = np.cumsum(hist, axis=0)%0A    norm_cum_hist = cum_hist / np.sum(cum_hist, axis=1)%5B:,None%5D%0A%0A    if ax is None:%0A        ax = plt.gca()%0A%0A    X, Y = np.meshgrid(x_edges, y_edges)%0A    ax.pcolormesh(X, Y, norm_cum_hist)%0A%0Akeyseq = lambda: itertools.product(%0A                %5B'Sarsa', 'Q-learning'%5D, %5B'uninterrupted', 'interrupted'%5D)%0A

Add stats_experiments.py for keeping the notebook uncluttered