Skip to content

Commit 5f8a88a

Browse files
committed
support LogNorm as arg to hexbin
svn path=/trunk/matplotlib/; revision=8149
1 parent 4f85be1 commit 5f8a88a

File tree

4 files changed

+20
-2
lines changed

4 files changed

+20
-2
lines changed

lib/matplotlib/axes.py

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5769,9 +5769,22 @@ def hexbin(self, x, y, C = None, gridsize = 100, bins = None,
57695769
transOffset = self.transData,
57705770
)
57715771

5772+
if isinstance(norm, mcolors.LogNorm):
5773+
if (accum==0).any():
5774+
# make sure we have not zeros
5775+
accum += 1
5776+
5777+
57725778
# Transform accum if needed
57735779
if bins=='log':
57745780
accum = np.log10(accum+1)
5781+
5782+
# autoscale the norm with curren accum values if it hasn't
5783+
# been set
5784+
if norm is not None:
5785+
if norm.vmin is None and norm.vmax is None:
5786+
norm.autoscale(accum)
5787+
57755788
elif bins!=None:
57765789
if not iterable(bins):
57775790
minimum, maximum = min(accum), max(accum)

lib/matplotlib/colorbar.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -455,6 +455,10 @@ def _ticker(self):
455455
locator.set_data_interval(*intv)
456456
formatter.set_view_interval(*intv)
457457
formatter.set_data_interval(*intv)
458+
459+
# the dummy axis is expecting a minpos
460+
locator.axis.get_minpos = lambda : intv[0]
461+
formatter.axis.get_minpos = lambda : intv[0]
458462
b = np.array(locator())
459463
b, ticks = self._locate(b)
460464
formatter.set_locs(b)

lib/matplotlib/ticker.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -147,6 +147,7 @@ def get_data_interval(self):
147147
def set_data_interval(self, vmin, vmax):
148148
self.dataLim.intervalx = vmin, vmax
149149

150+
150151
def set_axis(self, axis):
151152
self.axis = axis
152153

make.osx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ clean:
2525

2626
fetch:
2727
${PYTHON} -c 'import urllib; urllib.urlretrieve("http://www.zlib.net/zlib-${ZLIBVERSION}.tar.gz", "zlib-${ZLIBVERSION}.tar.gz")' &&\
28-
${PYTHON} -c 'import urllib; urllib.urlretrieve("http://internap.dl.sourceforge.net/sourceforge/libpng/libpng-${PNGVERSION}.tar.bz2", "libpng-${PNGVERSION}.tar.bz2")' &&\
28+
${PYTHON} -c 'import urllib; urllib.urlretrieve("http://download.sourceforge.net/libpng/libpng-${PNGVERSION}.tar.gz", "libpng-${PNGVERSION}.tar.bz2")' &&\
2929
${PYTHON} -c 'import urllib; urllib.urlretrieve("http://download.savannah.gnu.org/releases/freetype/freetype-${FREETYPEVERSION}.tar.bz2", "freetype-${FREETYPEVERSION}.tar.bz2")'
3030

3131

@@ -46,7 +46,7 @@ zlib:
4646
png: zlib
4747
export PKG_CONFIG_PATH=${PKG_CONFIG_PATH} &&\
4848
rm -rf libpng-${PNGVERSION} &&\
49-
tar xvfj libpng-${PNGVERSION}.tar.bz2
49+
tar xvfz libpng-${PNGVERSION}.tar.gz
5050
cd libpng-${PNGVERSION} &&\
5151
export MACOSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET} &&\
5252
export CFLAGS=${CFLAGS} &&\

0 commit comments

Comments
 (0)