@@ -4352,27 +4352,33 @@ def _share_axes_asymmetric(A, B, shared_axes):
43524352 getattr (B , "_shared_{}_inv_axes" .format (shared_axes )).add (A )
43534353
43544354 def _share_axes (self , axes , shared_axes , symmetric = True , transitive = True ):
4355- if symmetric :
4356- self . _share_axes_symmetric ( self , axes , shared_axes )
4355+ if not iterable ( axes ) :
4356+ axes_iter = [ axes ]
43574357 else :
4358- self . _share_axes_asymmetric ( self , axes , shared_axes )
4358+ axes_iter = axes
43594359
4360- if transitive :
4361- sharedA = getattr (self , "_shared_{}_axes" .format (shared_axes ))
4362- sharedB = getattr (axes , "_shared_{}_axes" .format (shared_axes ))
4360+ for axes in axes_iter :
4361+ if symmetric :
4362+ self ._share_axes_symmetric (self , axes , shared_axes )
4363+ else :
4364+ self ._share_axes_asymmetric (self , axes , shared_axes )
43634365
4364- sharedDiffBA = sharedB - sharedA
4365- sharedDiffAB = sharedA - sharedB
4366+ if transitive :
4367+ sharedA = getattr (self , "_shared_{}_axes" .format (shared_axes ))
4368+ sharedB = getattr (axes , "_shared_{}_axes" .format (shared_axes ))
43664369
4367- if symmetric :
4368- for ax in sharedDiffAB :
4369- self ._share_axes_symmetric (axes , ax , shared_axes )
4370+ sharedDiffBA = sharedB - sharedA
4371+ sharedDiffAB = sharedA - sharedB
43704372
4371- for ax in sharedDiffBA :
4372- self ._share_axes_symmetric (self , ax , shared_axes )
4373- else :
4374- for ax in sharedDiffBA :
4375- self ._share_axes_asymmetric (self , ax , shared_axes )
4373+ if symmetric :
4374+ for ax in sharedDiffAB :
4375+ self ._share_axes_symmetric (axes , ax , shared_axes )
4376+
4377+ for ax in sharedDiffBA :
4378+ self ._share_axes_symmetric (self , ax , shared_axes )
4379+ else :
4380+ for ax in sharedDiffBA :
4381+ self ._share_axes_asymmetric (self , ax , shared_axes )
43764382
43774383 def share_x_axes (self , axes , symmetric = True , transitive = True ):
43784384 """
0 commit comments