class_docstr: Logarithmic scaled spectrogram (level vs. frequency vs. time).
  
  Adds pixels iteratively thanks to the adapter providing
  fixed size frame buffers.
class_docstr_tok: ["Logarithmic","scaled","spectrogram","(","level","vs.","frequency","vs.","time",")",".","Adds","pixels","iteratively","thanks","to","the","adapter","providing","fixed","size","frame","buffers","."]
docstr: Apply last 2D transforms
docstr_tok: ["Apply","last","2D","transforms"]
code: def post_process(self):
      """Apply last 2D transforms"""
      self.image.putdata(self.pixels)
      self.image = self.image.transpose(Image.ROTATE_90)
  
file_path: TimeSide/timeside/plugins/grapher/spectrogram_log.py
imports: from timeside.core import implements, interfacedoc
  from timeside.core.api import IGrapher
  from timeside.core.grapher import Grapher, Image
  from timeside.plugins.grapher.color_schemes import default_color_schemes
  from .utils import interpolate_colors
  import math
label_desc: Use image node_id 9 for calling the SpectrogramLog obj's underlying member method code with example usage: obj.post_process() without return types