@@ -312,6 +312,7 @@ def __init__(
312
312
numpoints = None , # number of points in the legend line
313
313
markerscale = None , # relative size of legend markers vs. original
314
314
markerfirst = True , # left/right ordering of legend marker and label
315
+ reverse = False # reverse ordering of legend marker and label
315
316
scatterpoints = None , # number of scatter points
316
317
scatteryoffsets = None ,
317
318
prop = None , # properties for the legend texts
@@ -525,7 +526,7 @@ def val_or_rc(val, rc_name):
525
526
self ._alignment = alignment
526
527
527
528
# init with null renderer
528
- self ._init_legend_box (handles , labels , markerfirst )
529
+ self ._init_legend_box (handles , labels , markerfirst , reverse )
529
530
530
531
tmp = self ._loc_used_default
531
532
self ._set_loc (loc )
@@ -750,7 +751,7 @@ def get_legend_handler(legend_handler_map, orig_handle):
750
751
pass
751
752
return None
752
753
753
- def _init_legend_box (self , handles , labels , markerfirst = True ):
754
+ def _init_legend_box (self , handles , labels , markerfirst = True , reverse = False ):
754
755
"""
755
756
Initialize the legend_box. The legend_box is an instance of
756
757
the OffsetBox, which is packed with legend handles and
@@ -783,6 +784,9 @@ def _init_legend_box(self, handles, labels, markerfirst=True):
783
784
# default transform (e.g., Collections), you need to
784
785
# manually set their transform to the self.get_transform().
785
786
legend_handler_map = self .get_legend_handler_map ()
787
+ if reverse == True :
788
+ handles .reverse ()
789
+ labels .reverse ()
786
790
787
791
for orig_handle , label in zip (handles , labels ):
788
792
handler = self .get_legend_handler (legend_handler_map , orig_handle )
0 commit comments