@@ -240,7 +240,8 @@ def tick_values(self, vmin, vmax):
240240 vmin = max (vmin , self ._colorbar .norm .vmin )
241241 vmax = min (vmax , self ._colorbar .norm .vmax )
242242 ticks = super ().tick_values (vmin , vmax )
243- return ticks [(ticks >= vmin ) & (ticks <= vmax )]
243+ rtol = (vmax - vmin ) * 1e-10
244+ return ticks [(ticks >= vmin - rtol ) & (ticks <= vmax + rtol )]
244245
245246
246247class _ColorbarAutoMinorLocator (ticker .AutoMinorLocator ):
@@ -296,7 +297,10 @@ def tick_values(self, vmin, vmax):
296297 vmin = self ._colorbar .norm .vmin
297298 vmax = self ._colorbar .norm .vmax
298299 ticks = super ().tick_values (vmin , vmax )
299- return ticks [(ticks >= vmin ) & (ticks <= vmax )]
300+ rtol = (np .log10 (vmax ) - np .log10 (vmin )) * 1e-10
301+ ticks = ticks [(np .log10 (ticks ) >= np .log10 (vmin ) - rtol ) &
302+ (np .log10 (ticks ) <= np .log10 (vmax ) + rtol )]
303+ return ticks
300304
301305
302306class ColorbarBase (cm .ScalarMappable ):
@@ -405,7 +409,6 @@ def __init__(self, ax, cmap=None,
405409 else :
406410 self .formatter = format # Assume it is a Formatter
407411 # The rest is in a method so we can recalculate when clim changes.
408- self .config_axis ()
409412 self .draw_all ()
410413
411414 def _extend_lower (self ):
@@ -439,6 +442,7 @@ def draw_all(self):
439442 # units:
440443 X , Y = self ._mesh ()
441444 C = self ._values [:, np .newaxis ]
445+ self .config_axis ()
442446 self ._config_axes (X , Y )
443447 if self .filled :
444448 self ._add_solids (X , Y , C )
@@ -593,6 +597,7 @@ def _config_axes(self, X, Y):
593597 ax .set_frame_on (False )
594598 ax .set_navigate (False )
595599 xy = self ._outline (X , Y )
600+ ax .ignore_existing_data_limits = True
596601 ax .update_datalim (xy )
597602 ax .set_xlim (* ax .dataLim .intervalx )
598603 ax .set_ylim (* ax .dataLim .intervaly )
@@ -1150,7 +1155,6 @@ def update_bruteforce(self, mappable):
11501155 self .set_alpha (mappable .get_alpha ())
11511156 self .cmap = mappable .cmap
11521157 self .norm = mappable .norm
1153- self .config_axis ()
11541158 self .draw_all ()
11551159 if isinstance (self .mappable , contour .ContourSet ):
11561160 CS = self .mappable
0 commit comments