import numpy as np import matplotlib.pyplot as plt def plot(table, title='', log=False): plt.figure(figsize=(6.3, 6)) plt.suptitle(title) plt.subplot(211) if log: plt.xscale('log') plt.title('EMD' + ' '*10, loc='right') plt.plot(table[0], table[1], color='#92182b') plt.tick_params(axis='y', labelcolor='#92182b') plt.ylabel('average', color='#92182b') plt.ticklabel_format(style='sci', axis='y', scilimits=(0, 0), useMathText=True) twin = plt.twinx() twin.plot(table[0], table[2], color='gray') twin.tick_params(axis='y', labelcolor='gray') twin.set_ylabel('standard deviation', color='gray') twin.ticklabel_format(style='sci', axis='y', scilimits=(0, 0), useMathText=True) plt.subplot(212) if log: plt.xscale('log') plt.title('skewness', loc='right') plt.xlabel('RL rounds') plt.plot(table[0], table[3], color='xkcd:gray') plt.tight_layout() table = np.loadtxt('ex-6/plots/emd-round.txt') plot(table[:27].T, title='noiseless', log=True) plot(table[27:47].T, title=r'noise at $\sigma=0.005$') plot(table[47:67].T, title=r'noise at $\sigma=0.01$') plot(table[67:].T, title=r'noise at $\sigma=0.05$') plt.show()