diff --git a/lib/mpl_toolkits/axes_grid1/colorbar.py b/lib/mpl_toolkits/axes_grid1/colorbar.py index 4268502dbd75..f5912c9fcfc2 100644 --- a/lib/mpl_toolkits/axes_grid1/colorbar.py +++ b/lib/mpl_toolkits/axes_grid1/colorbar.py @@ -374,9 +374,8 @@ def __init__(self, ax, cmap=None, if format is None: if isinstance(self.norm, colors.LogNorm): # change both axis for proper aspect - self.ax.xaxis.set_scale("log") - self.ax.yaxis.set_scale("log") - self.ax._update_transScale() + self.ax.set_xscale("log") + self.ax.set_yscale("log") self.cbar_axis.set_minor_locator(ticker.NullLocator()) formatter = ticker.LogFormatter() else: diff --git a/lib/mpl_toolkits/tests/test_axes_grid1.py b/lib/mpl_toolkits/tests/test_axes_grid1.py index 33c9b0ba3066..e3d0690f8853 100644 --- a/lib/mpl_toolkits/tests/test_axes_grid1.py +++ b/lib/mpl_toolkits/tests/test_axes_grid1.py @@ -4,8 +4,13 @@ from matplotlib.externals import six import matplotlib.pyplot as plt -from matplotlib.testing.decorators import image_comparison +from matplotlib.testing.decorators import image_comparison, cleanup + from mpl_toolkits.axes_grid1 import make_axes_locatable +from mpl_toolkits.axes_grid1 import AxesGrid + +from matplotlib.colors import LogNorm + import numpy as np @@ -50,6 +55,23 @@ def test_divider_append_axes(): axHistleft.yaxis.set_ticklabels(()) axHistright.yaxis.set_ticklabels(()) + +@cleanup +def test_axesgrid_colorbar_log_smoketest(): + fig = plt.figure() + grid = AxesGrid(fig, 111, # modified to be only subplot + nrows_ncols=(1, 1), + label_mode="L", + cbar_location="top", + cbar_mode="single", + ) + + Z = 10000 * np.random.rand(10, 10) + im = grid[0].imshow(Z, interpolation="nearest", norm=LogNorm()) + + grid.cbar_axes[0].colorbar(im) + + if __name__ == '__main__': import nose nose.runmodule(argv=['-s', '--with-doctest'], exit=False)