@@ -1618,7 +1618,7 @@ def get_default_bbox_extra_artists(self):
16181618 bbox_artists .extend (ax .get_default_bbox_extra_artists ())
16191619 return bbox_artists
16201620
1621- def get_tightbbox (self , renderer , bbox_extra_artists = None ):
1621+ def get_tightbbox (self , renderer = None , bbox_extra_artists = None ):
16221622 """
16231623 Return a (tight) bounding box of the figure *in inches*.
16241624
@@ -1645,6 +1645,9 @@ def get_tightbbox(self, renderer, bbox_extra_artists=None):
16451645 containing the bounding box (in figure inches).
16461646 """
16471647
1648+ if renderer is None :
1649+ renderer = self .figure ._get_renderer ()
1650+
16481651 bb = []
16491652 if bbox_extra_artists is None :
16501653 artists = self .get_default_bbox_extra_artists ()
@@ -2060,13 +2063,8 @@ def dpi(self):
20602063 def dpi (self , value ):
20612064 self ._parent .dpi = value
20622065
2063- @property
2064- def _cachedRenderer (self ):
2065- return self ._parent ._cachedRenderer
2066-
2067- @_cachedRenderer .setter
2068- def _cachedRenderer (self , renderer ):
2069- self ._parent ._cachedRenderer = renderer
2066+ def _get_renderer (self ):
2067+ return self ._parent ._get_renderer ()
20702068
20712069 def _redo_transform_rel_fig (self , bbox = None ):
20722070 """
@@ -2496,6 +2494,14 @@ def axes(self):
24962494
24972495 get_axes = axes .fget
24982496
2497+ def _get_renderer (self ):
2498+ if self ._cachedRenderer is not None :
2499+ return self ._cachedRenderer
2500+ elif hasattr (self .canvas , 'get_renderer' ):
2501+ return self .canvas .get_renderer ()
2502+ else :
2503+ return _get_renderer (self )
2504+
24992505 def _get_dpi (self ):
25002506 return self ._dpi
25012507
@@ -2644,7 +2650,7 @@ def get_constrained_layout_pads(self, relative=False):
26442650 hspace = info ['hspace' ]
26452651
26462652 if relative and (w_pad is not None or h_pad is not None ):
2647- renderer = _get_renderer (self )
2653+ renderer = self . _get_renderer ()
26482654 dpi = renderer .dpi
26492655 w_pad = w_pad * dpi / renderer .width
26502656 h_pad = h_pad * dpi / renderer .height
0 commit comments