File tree 2 files changed +14
-3
lines changed
2 files changed +14
-3
lines changed Original file line number Diff line number Diff line change @@ -2979,13 +2979,13 @@ def _update_title_position(self, renderer):
2979
2979
axs = axs + [ax ]
2980
2980
top = - np .Inf
2981
2981
for ax in axs :
2982
+ bb = None
2982
2983
if (ax .xaxis .get_ticks_position () in ['top' , 'unknown' ]
2983
2984
or ax .xaxis .get_label_position () == 'top' ):
2984
2985
bb = ax .xaxis .get_tightbbox (renderer )
2985
- else :
2986
+ if bb is None :
2986
2987
bb = ax .get_window_extent (renderer )
2987
- if bb is not None :
2988
- top = max (top , bb .ymax )
2988
+ top = max (top , bb .ymax )
2989
2989
if top < 0 :
2990
2990
# the top of Axes is not even on the figure, so don't try and
2991
2991
# automatically place it.
Original file line number Diff line number Diff line change @@ -5643,6 +5643,17 @@ def test_title_location_roundtrip():
5643
5643
ax .set_title ('fail' , loc = 'foo' )
5644
5644
5645
5645
5646
+ @pytest .mark .parametrize ('sharex' , [True , False ])
5647
+ def test_title_location_shared (sharex ):
5648
+ fig , axs = plt .subplots (2 , 1 , sharex = sharex )
5649
+ axs [0 ].set_title ('A' , pad = - 40 )
5650
+ axs [1 ].set_title ('B' , pad = - 40 )
5651
+ fig .draw_without_rendering ()
5652
+ x , y1 = axs [0 ].title .get_position ()
5653
+ x , y2 = axs [1 ].title .get_position ()
5654
+ assert y1 == y2 == 1.0
5655
+
5656
+
5646
5657
@image_comparison (["loglog.png" ], remove_text = True , tol = 0.02 )
5647
5658
def test_loglog ():
5648
5659
fig , ax = plt .subplots ()
You can’t perform that action at this time.
0 commit comments