@@ -1732,21 +1732,27 @@ def _update_label_position(self, bboxes, bboxes2):
1732
1732
return
1733
1733
x , y = self .label .get_position ()
1734
1734
if self .label_position == 'bottom' :
1735
- spine = self .axes .spines ['bottom' ]
1736
- spinebbox = spine .get_transform ().transform_path (
1737
- spine .get_path ()).get_extents ()
1738
- bbox = mtransforms .Bbox .union (bboxes + [spinebbox ])
1735
+ try :
1736
+ spine = self .axes .spines ['bottom' ]
1737
+ spinebboxes = [spine .get_transform ().transform_path (
1738
+ spine .get_path ()).get_extents ()]
1739
+ except KeyError :
1740
+ spinebboxes = []
1741
+ bbox = mtransforms .Bbox .union (bboxes + spinebboxes )
1739
1742
bottom = bbox .y0
1740
1743
1741
1744
self .label .set_position (
1742
1745
(x , bottom - self .labelpad * self .figure .dpi / 72.0 )
1743
1746
)
1744
1747
1745
1748
else :
1746
- spine = self .axes .spines ['top' ]
1747
- spinebbox = spine .get_transform ().transform_path (
1748
- spine .get_path ()).get_extents ()
1749
- bbox = mtransforms .Bbox .union (bboxes2 + [spinebbox ])
1749
+ try :
1750
+ spine = self .axes .spines ['top' ]
1751
+ spinebboxes = [spine .get_transform ().transform_path (
1752
+ spine .get_path ()).get_extents ()]
1753
+ except KeyError :
1754
+ spinebboxes = []
1755
+ bbox = mtransforms .Bbox .union (bboxes2 + spinebboxes )
1750
1756
top = bbox .y1
1751
1757
1752
1758
self .label .set_position (
@@ -2040,21 +2046,27 @@ def _update_label_position(self, bboxes, bboxes2):
2040
2046
return
2041
2047
x , y = self .label .get_position ()
2042
2048
if self .label_position == 'left' :
2043
- spine = self .axes .spines ['left' ]
2044
- spinebbox = spine .get_transform ().transform_path (
2045
- spine .get_path ()).get_extents ()
2046
- bbox = mtransforms .Bbox .union (bboxes + [spinebbox ])
2049
+ try :
2050
+ spine = self .axes .spines ['left' ]
2051
+ spinebboxes = [spine .get_transform ().transform_path (
2052
+ spine .get_path ()).get_extents ()]
2053
+ except KeyError :
2054
+ spinebboxes = []
2055
+ bbox = mtransforms .Bbox .union (bboxes + spinebboxes )
2047
2056
left = bbox .x0
2048
2057
2049
2058
self .label .set_position (
2050
2059
(left - self .labelpad * self .figure .dpi / 72.0 , y )
2051
2060
)
2052
2061
2053
2062
else :
2054
- spine = self .axes .spines ['right' ]
2055
- spinebbox = spine .get_transform ().transform_path (
2056
- spine .get_path ()).get_extents ()
2057
- bbox = mtransforms .Bbox .union (bboxes2 + [spinebbox ])
2063
+ try :
2064
+ spine = self .axes .spines ['right' ]
2065
+ spinebboxes = [spine .get_transform ().transform_path (
2066
+ spine .get_path ()).get_extents ()]
2067
+ except KeyError :
2068
+ spinebboxes = []
2069
+ bbox = mtransforms .Bbox .union (bboxes2 + spinebboxes )
2058
2070
right = bbox .x1
2059
2071
2060
2072
self .label .set_position (
0 commit comments