Spaces:
Build error
Build error
| """Plotting classes""" | |
| import matplotlib | |
| matplotlib.use('Agg') | |
| import matplotlib.pyplot as plt | |
| class EpochFigure: | |
| """Basic figure for plotting scores across epochs | |
| :param str title: Figure title | |
| :param str ylabel: Plot's y label | |
| """ | |
| def __init__(self, title, *, ylabel): | |
| self.fig = plt.figure() | |
| self.axes = self.fig.add_subplot(1, 1, 1) | |
| self.title = title | |
| self.ylabel = ylabel | |
| def __del__(self): | |
| plt.close(self.fig) | |
| def __getattr__(self, name): | |
| # Delegate method calls on self.axes | |
| return getattr(self.axes, name) | |
| def save(self, path): | |
| """Save figure to given path""" | |
| self.axes.grid(b=True, which='major', color='k', linestyle='-') | |
| self.axes.grid(b=True, which='minor', color='r', linestyle='-', alpha=0.2) | |
| self.axes.minorticks_on() | |
| self.axes.legend() | |
| self.axes.set_xlabel('epoch') | |
| self.axes.set_ylabel(self.ylabel) | |
| self.axes.set_title(self.title) | |
| self.fig.savefig(path) | |