FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

Axes.hist with log=True, histtype='step...' ignores bottom kwarg · Issue #4606 · matplotlib/matplotlib · GitHub

Repository navigation

Axes.hist with log=True, histtype='step...' ignores bottom kwarg #4606

Closed

Description

The Axes.hist method doesn't handle the bottom kwarg properly when given log=True and histtype='step' or histtype='stepfilled'. As the example below shows, the method sets a minimum value to prevent issues with zeros on a log scale, but that supercedes a non-zero bottom kwarg:

import numpy
from matplotlib import pyplot
fig = pyplot.figure()
ax = fig.gca()
ax.hist(numpy.random.random(1000), bins=100, log=True, bottom=1e-2, histtype='stepfilled')
ax.set_ylim(1e-2, 1e3)
ax.set_title('Bottom should be 1e-2, but instead is 1/base')

I can correct the issue with the following edit:

diff --git a/lib/matplotlib/axes/_axes.py b/lib/matplotlib/axes/_axes.py
index 4d10e86..2392a6d 100644
--- a/lib/matplotlib/axes/_axes.py
+++ b/lib/matplotlib/axes/_axes.py
@@ -5779,7 +5779,9 @@ class Axes(_AxesBase):
                     logbase = self.yaxis._scale.base

                 # Setting a minimum of 0 results in problems for log plots
-                if normed or weights is not None:
+                if np.min(bottom) > 0:
+                    minimum = np.min(bottom)
+                elif normed or weights is not None:
                     # For normed data, set to log base * minimum data value
                     # (gives 1 full tick-label unit for the lowest filled bin)
                     ndata = np.array(n)

which uses the bottom value to set the minimum if it's nonzero. If this is confirmed as a bug, I can open a PR.

Activity

  1. tacaswell commented on Jul 8, 2015

    Member

    Can you please create a PR with that diff? That is the easiest way for us to review and merge the change.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions


      Back | FazBrowse Home | New Git URL