import matplotlib.pyplot as plt darkBlue = "#011627" darkWhite = "#c9d2df" class PPOHistory(object): def __init__(self): self.meanRewards = [] self.entropys = [] self.actorLosses = [] self.criticLosses = [] def saveHis(self, rewards, entropys, aLosses, cLosses): self.meanRewards.extend([rewards]) self.entropys.extend([entropys]) self.actorLosses.extend(aLosses) self.criticLosses.extend(cLosses) def drawHis(self): def setSubFig(subFig, data, title): subFig.set_facecolor(darkBlue) subFig.tick_params(colors=darkWhite) subFig.spines["top"].set_color(darkWhite) subFig.spines["bottom"].set_color(darkWhite) subFig.spines["left"].set_color(darkWhite) subFig.spines["right"].set_color(darkWhite) subFig.plot(range(len(data)), data, color=darkWhite, label=title) subFig.set_title(title, color=darkWhite) fig, ((ax1, ax2), (ax3, ax4)) = plt.subplots(2, 2, figsize=(21, 13), facecolor=darkBlue) setSubFig(ax1, self.meanRewards, "meanRewards") setSubFig(ax2, self.entropys, "entropys") setSubFig(ax3, self.actorLosses, "actorLosses") setSubFig(ax4, self.criticLosses, "criticLosses") plt.show()