@@ -790,7 +790,12 @@ def from_list(name, colors, N=256, gamma=1.0):
790
790
791
791
def _resample (self , lutsize ):
792
792
"""Return a new color map with *lutsize* entries."""
793
- return LinearSegmentedColormap (self .name , self ._segmentdata , lutsize )
793
+ new_cmap = LinearSegmentedColormap (self .name , self ._segmentdata ,
794
+ lutsize )
795
+ new_cmap ._rgba_over = self ._rgba_over
796
+ new_cmap ._rgba_under = self ._rgba_under
797
+ new_cmap ._rgba_bad = self ._rgba_bad
798
+ return new_cmap
794
799
795
800
# Helper ensuring picklability of the reversed cmap.
796
801
@staticmethod
@@ -821,7 +826,12 @@ def reversed(self, name=None):
821
826
[(1.0 - x , y1 , y0 ) for x , y0 , y1 in reversed (data )])
822
827
for key , data in self ._segmentdata .items ()}
823
828
824
- return LinearSegmentedColormap (name , data_r , self .N , self ._gamma )
829
+ new_cmap = LinearSegmentedColormap (name , data_r , self .N , self ._gamma )
830
+ # Reverse the over/under values too
831
+ new_cmap ._rgba_over = self ._rgba_under
832
+ new_cmap ._rgba_under = self ._rgba_over
833
+ new_cmap ._rgba_bad = self ._rgba_bad
834
+ return new_cmap
825
835
826
836
827
837
class ListedColormap (Colormap ):
@@ -885,7 +895,12 @@ def _init(self):
885
895
def _resample (self , lutsize ):
886
896
"""Return a new color map with *lutsize* entries."""
887
897
colors = self (np .linspace (0 , 1 , lutsize ))
888
- return ListedColormap (colors , name = self .name )
898
+ new_cmap = ListedColormap (colors , name = self .name )
899
+ # Keep the over/under values too
900
+ new_cmap ._rgba_over = self ._rgba_over
901
+ new_cmap ._rgba_under = self ._rgba_under
902
+ new_cmap ._rgba_bad = self ._rgba_bad
903
+ return new_cmap
889
904
890
905
def reversed (self , name = None ):
891
906
"""
@@ -906,7 +921,12 @@ def reversed(self, name=None):
906
921
name = self .name + "_r"
907
922
908
923
colors_r = list (reversed (self .colors ))
909
- return ListedColormap (colors_r , name = name , N = self .N )
924
+ new_cmap = ListedColormap (colors_r , name = name , N = self .N )
925
+ # Reverse the over/under values too
926
+ new_cmap ._rgba_over = self ._rgba_under
927
+ new_cmap ._rgba_under = self ._rgba_over
928
+ new_cmap ._rgba_bad = self ._rgba_bad
929
+ return new_cmap
910
930
911
931
912
932
class Normalize :
0 commit comments