From 2fc92c2d0cd06402f06aa63e8571ca3f887b422f Mon Sep 17 00:00:00 2001 From: David Stansby Date: Sat, 25 Sep 2021 16:41:06 +0100 Subject: [PATCH 1/5] Fix LogLocator locating --- .../test_axes/auto_numticks_log.png | Bin 18906 -> 21468 bytes .../test_axes/test_loglog_nonpos.png | Bin 23784 -> 23993 bytes .../test_scale/logscale_nonpos_values.png | Bin 17034 -> 17356 bytes lib/matplotlib/tests/test_colorbar.py | 12 +++--- lib/matplotlib/tests/test_ticker.py | 12 +++--- lib/matplotlib/ticker.py | 39 ++++++++++++------ 6 files changed, 38 insertions(+), 25 deletions(-) diff --git a/lib/matplotlib/tests/baseline_images/test_axes/auto_numticks_log.png b/lib/matplotlib/tests/baseline_images/test_axes/auto_numticks_log.png index 7a31434f501fd76d04004e1725bb33de6bc0e9b9..b9b93d3a116c92811bfee8b3d5e54d40de44503d 100644 GIT binary patch literal 21468 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 Zb8-_a8GXWovoujRt|>~VT-AR1e*jlx=I8(b literal 18906 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 UBbOfiawY^LB`cYIOZUb90R-M*j{pDw diff --git a/lib/matplotlib/tests/baseline_images/test_axes/test_loglog_nonpos.png b/lib/matplotlib/tests/baseline_images/test_axes/test_loglog_nonpos.png index 5dd4757445fe963a12d6d1be6aef64a61db404a9..75c07c801c04c2d0e5c7d3cd407503b251f952f4 100644 GIT binary patch literal 23993 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 TM>0W_j&fMH#jb$x)8T&ryw|DU literal 23784 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 BFB1R& literal 17034 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 j^?$d={C~HR>QpryjOe|@#_Bq1N>{T diff --git a/lib/matplotlib/tests/test_colorbar.py b/lib/matplotlib/tests/test_colorbar.py index 6b691713e7e6..575c2df36b4f 100644 --- a/lib/matplotlib/tests/test_colorbar.py +++ b/lib/matplotlib/tests/test_colorbar.py @@ -414,6 +414,7 @@ def test_colorbar_autotickslog(): x = np.arange(-3.0, 4.001) y = np.arange(-4.0, 3.001) X, Y = np.meshgrid(x, y) + # Z ranges from -12 to 12 Z = X * Y Z = Z[:-1, :-1] pcm = ax[0].pcolormesh(X, Y, 10**Z, norm=LogNorm()) @@ -423,12 +424,10 @@ def test_colorbar_autotickslog(): pcm = ax[1].pcolormesh(X, Y, 10**Z, norm=LogNorm()) cbar2 = fig.colorbar(pcm, ax=ax[1], extend='both', orientation='vertical', shrink=0.4) - # note only -12 to +12 are visible np.testing.assert_almost_equal(cbar.ax.yaxis.get_ticklocs(), - 10**np.arange(-16., 16.2, 4.)) - # note only -24 to +24 are visible + 10**np.arange(-12, 12.01, 4)) np.testing.assert_almost_equal(cbar2.ax.yaxis.get_ticklocs(), - 10**np.arange(-24., 25., 12.)) + 10**np.arange(-12, 12.01, 12)) def test_colorbar_get_ticks(): @@ -515,6 +514,7 @@ def test_colorbar_log_minortick_labels(): def test_colorbar_renorm(): x, y = np.ogrid[-4:4:31j, -4:4:31j] + # z ranges from ~1.52e-9 to 1.2e5 z = 120000*np.exp(-x**2 - y**2) fig, ax = plt.subplots() @@ -529,7 +529,7 @@ def test_colorbar_renorm(): norm = LogNorm(z.min(), z.max()) im.set_norm(norm) np.testing.assert_allclose(cbar.ax.yaxis.get_majorticklocs(), - np.logspace(-10, 7, 18)) + np.logspace(-9, 5, 8)) # note that set_norm removes the FixedLocator... assert np.isclose(cbar.vmin, z.min()) cbar.set_ticks([1, 2, 3]) @@ -564,7 +564,7 @@ def test_colorbar_format(): im.set_norm(LogNorm(vmin=0.1, vmax=10)) fig.canvas.draw() assert (cbar.ax.yaxis.get_ticklabels()[0].get_text() == - r'$\mathdefault{10^{-2}}$') + r'$\mathdefault{10^{-1}}$') def test_colorbar_scale_reset(): diff --git a/lib/matplotlib/tests/test_ticker.py b/lib/matplotlib/tests/test_ticker.py index d99fd5a306b9..311ef316416f 100644 --- a/lib/matplotlib/tests/test_ticker.py +++ b/lib/matplotlib/tests/test_ticker.py @@ -198,13 +198,11 @@ def test_basic(self): with pytest.raises(ValueError): loc.tick_values(0, 1000) - test_value = np.array([1.00000000e-05, 1.00000000e-03, 1.00000000e-01, - 1.00000000e+01, 1.00000000e+03, 1.00000000e+05, - 1.00000000e+07, 1.000000000e+09]) - assert_almost_equal(loc.tick_values(0.001, 1.1e5), test_value) + test_value = np.array([1e-3, 1e-1, 1e1, 1e3, 1e5]) + assert_almost_equal(loc.tick_values(1e-3, 1e5), test_value) loc = mticker.LogLocator(base=2) - test_value = np.array([0.5, 1., 2., 4., 8., 16., 32., 64., 128., 256.]) + test_value = np.array([1, 2, 4, 8, 16, 32, 64, 128]) assert_almost_equal(loc.tick_values(1, 100), test_value) def test_switch_to_autolocator(self): @@ -1373,5 +1371,5 @@ def test_small_range_loglocator(numticks): ll = mticker.LogLocator() ll.set_params(numticks=numticks) for top in [5, 7, 9, 11, 15, 50, 100, 1000]: - ticks = ll.tick_values(.5, top) - assert (np.diff(np.log10(ll.tick_values(6, 150))) == 1).all() + ticks = ll.tick_values(0.5, top) + assert len(ticks) > 1 diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index 6d8fa5419bbf..cb85ed58ac08 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -2292,6 +2292,14 @@ def __call__(self): return self.tick_values(vmin, vmax) def tick_values(self, vmin, vmax): + """ + Return tick locations. + + Notes + ----- + If vmin/vmax are not exactly on a decade, a single tick lower/higher + than vmin/vmax can be returned. + """ if self.numticks == 'auto': if self.axis is not None: numticks = np.clip(self.axis.get_tick_space(), 2, 9) @@ -2322,10 +2330,13 @@ def tick_values(self, vmin, vmax): if vmax < vmin: vmin, vmax = vmax, vmin - log_vmin = math.log(vmin) / math.log(b) - log_vmax = math.log(vmax) / math.log(b) + # Since base 10 is most common, use log10 here to minimise floating + # point errors when vmin/vmax is exactly on a decade + log_vmin = np.log10(vmin) / np.log10(b) + log_vmax = np.log10(vmax) / np.log10(b) - numdec = math.floor(log_vmax) - math.ceil(log_vmin) + # Number of decades fully containing range [vmin, vmax] + numdec = math.ceil(log_vmax) - math.floor(log_vmin) if isinstance(self._subs, str): _first = 2.0 if self._subs == 'auto' else 1.0 @@ -2342,22 +2353,26 @@ def tick_values(self, vmin, vmax): # Get decades between major ticks. stride = (max(math.ceil(numdec / (numticks - 1)), 1) if mpl.rcParams['_internal.classic_mode'] else - (numdec + 1) // numticks + 1) + numdec // numticks) - # if we have decided that the stride is as big or bigger than - # the range, clip the stride back to the available range - 1 - # with a floor of 1. This prevents getting axis with only 1 tick - # visible. if stride >= numdec: + # If we have decided that the stride is as big or bigger than + # the range, clip the stride back to the available range - 1 + # with a floor of 1. This prevents getting axis with only 1 tick + # visible. stride = max(1, numdec - 1) + elif stride == 0: + # If requesting more ticks than decades, make sure we always have + # at least a single stride + stride = 1 # Does subs include anything other than 1? Essentially a hack to know # whether we're a major or a minor locator. have_subs = len(subs) > 1 or (len(subs) == 1 and subs[0] != 1.0) - decades = np.arange(math.floor(log_vmin) - stride, - math.ceil(log_vmax) + 2 * stride, stride) - + decades = np.arange(math.floor(log_vmin), + math.ceil(log_vmax) + 1, + stride) if hasattr(self, '_transform'): ticklocs = self._transform.inverted().transform(decades) if have_subs: @@ -2368,7 +2383,7 @@ def tick_values(self, vmin, vmax): ticklocs = np.array([]) else: if have_subs: - if stride == 1: + if stride == 1 and len(decades): ticklocs = np.concatenate( [subs * decade_start for decade_start in b ** decades]) else: From d75abaff6fdd01352ffc8b79f5d3b57ea1be1ffe Mon Sep 17 00:00:00 2001 From: David Stansby Date: Sat, 25 Sep 2021 16:45:40 +0100 Subject: [PATCH 2/5] Add test --- lib/matplotlib/tests/test_ticker.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/lib/matplotlib/tests/test_ticker.py b/lib/matplotlib/tests/test_ticker.py index 311ef316416f..00c1e8ea2f83 100644 --- a/lib/matplotlib/tests/test_ticker.py +++ b/lib/matplotlib/tests/test_ticker.py @@ -1373,3 +1373,12 @@ def test_small_range_loglocator(numticks): for top in [5, 7, 9, 11, 15, 50, 100, 1000]: ticks = ll.tick_values(0.5, top) assert len(ticks) > 1 + + +# Test vmin/vmax both on and off an exact decade +@pytest.mark.parametrize('vmin', [0.1, 0.2]) +@pytest.mark.parametrize('vmax', [100, 110]) +@pytest.mark.parametrize('numticks', np.arange(2, 11)) +def test_loglocator_numticks(numticks, vmin, vmax): + ll = mticker.LogLocator(numticks=numticks) + assert len(ll.tick_values(vmin, vmax)) <= numticks From 37b169379df36c98b71d42e8a4a25322011c33ae Mon Sep 17 00:00:00 2001 From: David Stansby Date: Mon, 27 Sep 2021 13:49:57 +0100 Subject: [PATCH 3/5] Add some additional tests --- lib/matplotlib/tests/test_ticker.py | 21 +++++++++++++++++++++ lib/matplotlib/ticker.py | 13 +++++-------- 2 files changed, 26 insertions(+), 8 deletions(-) diff --git a/lib/matplotlib/tests/test_ticker.py b/lib/matplotlib/tests/test_ticker.py index 00c1e8ea2f83..72ecd77174c9 100644 --- a/lib/matplotlib/tests/test_ticker.py +++ b/lib/matplotlib/tests/test_ticker.py @@ -1382,3 +1382,24 @@ def test_small_range_loglocator(numticks): def test_loglocator_numticks(numticks, vmin, vmax): ll = mticker.LogLocator(numticks=numticks) assert len(ll.tick_values(vmin, vmax)) <= numticks + + +@pytest.mark.parametrize('base', [2, 5, 10, 3.8]) +def test_loglocator_bases(base): + ll = mticker.LogLocator(base=base, numticks=2) + vmin, vmax = base**1, base**2 + # Ticks should be exactly on a decade + np.testing.assert_equal(ll.tick_values(vmin, vmax), + [base**1, base**2]) + # Ticks should extend to cover whole range of values + np.testing.assert_equal(ll.tick_values(vmin - 1, vmax + 1), + [base**0, base**3]) + # Even if the range is less than a decade, + # we should always get two ticks back + # + # Range falls within two decades + np.testing.assert_equal(ll.tick_values(vmin + 1, vmax - 1), + [base**1, base**2]) + # Range falls across a decade + np.testing.assert_equal(ll.tick_values(vmin - 1, vmin + 1), + [base**0, base**2]) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index cb85ed58ac08..0ae0f10228a1 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -2330,8 +2330,6 @@ def tick_values(self, vmin, vmax): if vmax < vmin: vmin, vmax = vmax, vmin - # Since base 10 is most common, use log10 here to minimise floating - # point errors when vmin/vmax is exactly on a decade log_vmin = np.log10(vmin) / np.log10(b) log_vmax = np.log10(vmax) / np.log10(b) @@ -2355,12 +2353,11 @@ def tick_values(self, vmin, vmax): if mpl.rcParams['_internal.classic_mode'] else numdec // numticks) - if stride >= numdec: - # If we have decided that the stride is as big or bigger than - # the range, clip the stride back to the available range - 1 - # with a floor of 1. This prevents getting axis with only 1 tick - # visible. - stride = max(1, numdec - 1) + if stride > numdec: + # If we have decided that the stride is bigger than the range, clip + # the stride back to the available range - 1 with a floor of 1. + # This prevents getting axis with only 1 tick visible. + stride = max(1, numdec) elif stride == 0: # If requesting more ticks than decades, make sure we always have # at least a single stride From f1d7ee1c31b2c4f28f2194f8e360273d40f5034b Mon Sep 17 00:00:00 2001 From: David Stansby Date: Tue, 28 Sep 2021 12:22:16 +0100 Subject: [PATCH 4/5] Add API change --- doc/api/next_api_changes/behavior/21177-DS.rst | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 doc/api/next_api_changes/behavior/21177-DS.rst diff --git a/doc/api/next_api_changes/behavior/21177-DS.rst b/doc/api/next_api_changes/behavior/21177-DS.rst new file mode 100644 index 000000000000..f42f029ef17b --- /dev/null +++ b/doc/api/next_api_changes/behavior/21177-DS.rst @@ -0,0 +1,10 @@ +``LogLocator`` now respects ``numticks`` +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +The algorithm within `~matplotlib.ticker.LogLocator` has been modified to +respect the ``numticks`` argument. Whereas previously more ticks than +``numticks`` could be returned, ``numticks`` is now an upper limit on the +number of ticks returned. + +In some cases, this change results in one more tick being added on a +log-scaled axis, and correctly adds some ticks to log-scaled errorbar plots +that were previously missing. From 75d8d41e53c118289808a1250d5048ead5852d2a Mon Sep 17 00:00:00 2001 From: David Stansby Date: Tue, 28 Sep 2021 12:24:49 +0100 Subject: [PATCH 5/5] Simplify stride logic --- lib/matplotlib/ticker.py | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index 0ae0f10228a1..67b06e2184f6 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -2351,17 +2351,7 @@ def tick_values(self, vmin, vmax): # Get decades between major ticks. stride = (max(math.ceil(numdec / (numticks - 1)), 1) if mpl.rcParams['_internal.classic_mode'] else - numdec // numticks) - - if stride > numdec: - # If we have decided that the stride is bigger than the range, clip - # the stride back to the available range - 1 with a floor of 1. - # This prevents getting axis with only 1 tick visible. - stride = max(1, numdec) - elif stride == 0: - # If requesting more ticks than decades, make sure we always have - # at least a single stride - stride = 1 + max(numdec // numticks, 1)) # Does subs include anything other than 1? Essentially a hack to know # whether we're a major or a minor locator.