def METHOD_NAME(self, settings, t, spectrum):
    if self.smooth:
        scope = self.smooth_scope
        if t != 0:
            new = np.copy(spectrum)
            for _ in range(2):
                for i in range(scope, len(spectrum) - scope):
                    new[i] = np.mean(spectrum[i - scope : i + scope + 1])
                scope = 1
                for i in range(scope, len(spectrum) - scope):
                    spectrum[i] = np.mean(new[i - scope : i + scope + 1])
        x = settings.radius_bins_edges[:-scope]
        dx = np.diff(x)
        self.ax.plot(
            (x[:-1] + dx / 2) * si.metres / si.micrometres,
            spectrum[:-scope] * si.kilograms / si.grams,
            label=f"t = {t}s",
            color=self.colors(
                t / (self.settings.output_steps[-1] * self.settings.dt)
            ),
        )
    else:
        self.ax.step(
            settings.radius_bins_edges[:-1] * si.metres / si.micrometres,
            spectrum * si.kilograms / si.grams,
            where="post",
            label=f"t = {t}s",
            color=self.colors(
                t / (self.settings.output_steps[-1] * self.settings.dt)
            ),
        )