class_docstr: Space in the figure for artists on the left of the panels
  
  Ordered from the edge of the figure and going inwards
class_docstr_tok: ["Space","in","the","figure","for","artists","on","the","left","of","the","panels","Ordered","from","the","edge","of","the","figure","and","going","inwards"]
code: def _calculate(self):
      _property = self.pack.theme.themeables.property
      pack = self.pack
  
      self.plot_margin = _property("plot_margin_left")
      if pack.legend and pack.legend_position == "left":
          self.legend += bbox_in_figure_space(
              pack.legend, pack.figure, pack.renderer
          ).width
          self.legend_box_spacing = _property("legend_box_spacing")
  
      if pack.axis_title_y:
          self.axis_title_y_margin_right = _property(
              "axis_title_y", "margin"
          ).get_as("r", "fig")
          self.axis_title_y = bbox_in_figure_space(
              pack.axis_title_y, pack.figure, pack.renderer
          ).width
  
      self.axis_ylabels = max_ylabels_width(pack, "first_col")
      self.axis_yticks = max_yticks_width(pack, "first_col")
  
imports: from __future__ import annotations
  import typing
  from abc import ABC
  from dataclasses import dataclass, fields
  from itertools import chain
  from matplotlib._tight_layout import get_subplotspec_list
  from ..facets import facet_grid, facet_null, facet_wrap
  from .patches import SFancyBboxPatch
  from .utils import bbox_in_figure_space, tight_bbox_in_figure_space
label_desc: Use image node_id 1 for calling the left_spaces obj's underlying member method code with example usage: obj._calculate() without return types