From 2e1a96d160e56493448416e24721db19a0de9345 Mon Sep 17 00:00:00 2001 From: Nic Eggert Date: Wed, 30 Jan 2013 10:59:25 -0500 Subject: [PATCH 1/5] Re-write stacked step histogram --- lib/matplotlib/axes.py | 48 +- .../test_axes/hist_stacked.png | Bin 5992 -> 0 bytes .../test_axes/hist_stacked_bar.pdf | Bin 0 -> 5985 bytes .../test_axes/hist_stacked_bar.png | Bin 0 -> 5712 bytes .../test_axes/hist_stacked_bar.svg | 661 ++++++++++++++++++ .../test_axes/hist_stacked_step.pdf | Bin 0 -> 5590 bytes .../test_axes/hist_stacked_step.png | Bin 0 -> 6091 bytes ...hist_stacked.svg => hist_stacked_step.svg} | 42 +- ...tacked.pdf => hist_stacked_stepfilled.pdf} | Bin 5514 -> 5587 bytes .../test_axes/hist_stacked_stepfilled.png | Bin 0 -> 5988 bytes .../test_axes/hist_stacked_stepfilled.svg | 594 ++++++++++++++++ .../hist_stacked_stepfilled_alpha.pdf | Bin 0 -> 5637 bytes .../hist_stacked_stepfilled_alpha.png | Bin 0 -> 6227 bytes .../hist_stacked_stepfilled_alpha.svg | 594 ++++++++++++++++ lib/matplotlib/tests/test_axes.py | 35 +- 15 files changed, 1953 insertions(+), 21 deletions(-) delete mode 100644 lib/matplotlib/tests/baseline_images/test_axes/hist_stacked.png create mode 100644 lib/matplotlib/tests/baseline_images/test_axes/hist_stacked_bar.pdf create mode 100644 lib/matplotlib/tests/baseline_images/test_axes/hist_stacked_bar.png create mode 100644 lib/matplotlib/tests/baseline_images/test_axes/hist_stacked_bar.svg create mode 100644 lib/matplotlib/tests/baseline_images/test_axes/hist_stacked_step.pdf create mode 100644 lib/matplotlib/tests/baseline_images/test_axes/hist_stacked_step.png rename lib/matplotlib/tests/baseline_images/test_axes/{hist_stacked.svg => hist_stacked_step.svg} (95%) rename lib/matplotlib/tests/baseline_images/test_axes/{hist_stacked.pdf => hist_stacked_stepfilled.pdf} (78%) create mode 100644 lib/matplotlib/tests/baseline_images/test_axes/hist_stacked_stepfilled.png create mode 100644 lib/matplotlib/tests/baseline_images/test_axes/hist_stacked_stepfilled.svg create mode 100644 lib/matplotlib/tests/baseline_images/test_axes/hist_stacked_stepfilled_alpha.pdf create mode 100644 lib/matplotlib/tests/baseline_images/test_axes/hist_stacked_stepfilled_alpha.png create mode 100644 lib/matplotlib/tests/baseline_images/test_axes/hist_stacked_stepfilled_alpha.svg diff --git a/lib/matplotlib/axes.py b/lib/matplotlib/axes.py index cf6f3ba9fd0b..1bae989fee4a 100644 --- a/lib/matplotlib/axes.py +++ b/lib/matplotlib/axes.py @@ -8108,10 +8108,8 @@ def hist(self, x, bins=10, range=None, normed=False, weights=None, hist_kwargs['new'] = True n = [] - mlast = None - # reversed order is necessary so when stacking histogram, first dataset is on top - # if histogram isn't stacked, this doesn't make any difference - for i in reversed(xrange(nx)): + mlast = bottom + for i in xrange(nx): # this will automatically overwrite bins, # so that each histogram uses the same bins m, bins = np.histogram(x[i], bins, weights=w[i], **hist_kwargs) @@ -8137,8 +8135,6 @@ def hist(self, x, bins=10, range=None, normed=False, weights=None, else: n = [m[slc].cumsum()[slc] for m in n] - n.reverse() # put them back in the right order - patches = [] if histtype.startswith('bar'): @@ -8175,17 +8171,23 @@ def hist(self, x, bins=10, range=None, normed=False, weights=None, _barfunc = self.bar for m, c in zip(n, color): - patch = _barfunc(bins[:-1]+boffset, m, width, + patch = _barfunc(bins[:-1]+boffset, m, width, bottom, align='center', log=log, color=c, bottom=bottom) patches.append(patch) + if stacked: + if bottom is None: + bottom = 0.0 + bottom += m boffset += dw elif histtype.startswith('step'): - x = np.zeros( 2*len(bins), np.float ) - y = np.zeros( 2*len(bins), np.float ) + # these define the perimeter of the polygon + x = np.zeros( 4*len(bins)-3, np.float ) + y = np.zeros( 4*len(bins)-3, np.float ) - x[0::2], x[1::2] = bins, bins + x[0:2*len(bins)-1:2], x[1:2*len(bins)-1:2] = bins, bins[:-1] + x[2*len(bins)-1:] = x[1:2*len(bins)-1][::-1] if log: if orientation == 'horizontal': @@ -8219,19 +8221,37 @@ def hist(self, x, bins=10, range=None, normed=False, weights=None, # overriding this fill = (histtype == 'stepfilled') - for m, c in zip(n, color): - y[1:-1:2], y[2::2] = m, m + xvals, yvals = [], [] + for m in n: + # starting point for drawing polygon + y[0] = y[-1] + # top of the previous polygon becomes the bottom + y[2*len(bins)-1:] = y[1:2*len(bins)-1][::-1] + # set the top of this polygon + y[1:2*len(bins)-1:2], y[2:2*len(bins):2] = m, m if log: y[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 W-1E4%Sql9UIDF9EnR+1b;@<%y9afkC literal 0 HcmV?d00001 diff --git a/lib/matplotlib/tests/baseline_images/test_axes/hist_stacked_bar.svg b/lib/matplotlib/tests/baseline_images/test_axes/hist_stacked_bar.svg new file mode 100644 index 000000000000..f4c985eebbde --- /dev/null +++ b/lib/matplotlib/tests/baseline_images/test_axes/hist_stacked_bar.svg @@ -0,0 +1,661 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/matplotlib/tests/baseline_images/test_axes/hist_stacked_step.pdf b/lib/matplotlib/tests/baseline_images/test_axes/hist_stacked_step.pdf new file mode 100644 index 0000000000000000000000000000000000000000..ec8ae1af2c8939cc97ee63791e4cb473fdcca6ce GIT binary patch literal 5590 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 SBp3zY=jtUx9g3Dsz<&cKf?f6i literal 0 HcmV?d00001 diff --git a/lib/matplotlib/tests/baseline_images/test_axes/hist_stacked_stepfilled_alpha.svg b/lib/matplotlib/tests/baseline_images/test_axes/hist_stacked_stepfilled_alpha.svg new file mode 100644 index 000000000000..9e4868c58d7b --- /dev/null +++ b/lib/matplotlib/tests/baseline_images/test_axes/hist_stacked_stepfilled_alpha.svg @@ -0,0 +1,594 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/matplotlib/tests/test_axes.py b/lib/matplotlib/tests/test_axes.py index 2e2354d55a37..fb512b607bf5 100644 --- a/lib/matplotlib/tests/test_axes.py +++ b/lib/matplotlib/tests/test_axes.py @@ -936,11 +936,11 @@ def test_errorbar(): fig.suptitle('Variable errorbars') -@image_comparison(baseline_images=['hist_stacked']) -def test_hist_stacked(): +@image_comparison(baseline_images=['hist_stacked_stepfilled']) +def test_hist_stacked_stepfilled(): # make some data - d1 = np.linspace(0, 10, 50) - d2 = np.linspace(1, 3, 20) + d1 = np.linspace(1, 3, 20) + d2 = np.linspace(0, 10, 50) fig = plt.figure() ax = fig.add_subplot(111) ax.hist( (d1, d2), histtype="stepfilled", stacked=True) @@ -968,6 +968,33 @@ def test_hist_stacked_weighted(): ax = fig.add_subplot(111) ax.hist( (d1, d2), weights=(w1,w2), histtype="stepfilled", stacked=True) +@image_comparison(baseline_images=['hist_stacked_stepfilled_alpha']) +def test_hist_stacked_stepfilled_alpha(): + # make some data + d1 = np.linspace(1, 3, 20) + d2 = np.linspace(0, 10, 50) + fig = plt.figure() + ax = fig.add_subplot(111) + ax.hist( (d1, d2), histtype="stepfilled", stacked=True, alpha=0.5) + +@image_comparison(baseline_images=['hist_stacked_step']) +def test_hist_stacked_step(): + # make some data + d1 = np.linspace(1, 3, 20) + d2 = np.linspace(0, 10, 50) + fig = plt.figure() + ax = fig.add_subplot(111) + ax.hist( (d1, d2), histtype="step", stacked=True) + +@image_comparison(baseline_images=['hist_stacked_bar']) +def test_hist_stacked_bar(): + # make some data + d1 = np.linspace(1, 3, 20) + d2 = np.linspace(0, 10, 50) + fig = plt.figure() + ax = fig.add_subplot(111) + ax.hist( (d1, d2), histtype="barstacked", stacked=True) + @image_comparison(baseline_images=['transparent_markers'], remove_text=True) def test_transparent_markers(): np.random.seed(0) From f6dfcead4f6bc16628e75b2f4d7d0ff1b34cca5e Mon Sep 17 00:00:00 2001 From: Nic Eggert Date: Sat, 23 Feb 2013 17:20:44 -0500 Subject: [PATCH 2/5] Fix bug in stacked bar histogram. Also, calling hist with `log=True` now behaves correctly in all cases. --- lib/matplotlib/axes.py | 24 +- .../test_axes/hist_stacked_bar.pdf | Bin 5985 -> 11589 bytes .../test_axes/hist_stacked_bar.png | Bin 5712 -> 10122 bytes .../test_axes/hist_stacked_bar.svg | 1360 ++++++++++++++--- lib/matplotlib/tests/test_axes.py | 18 +- 5 files changed, 1162 insertions(+), 240 deletions(-) diff --git a/lib/matplotlib/axes.py b/lib/matplotlib/axes.py index 1bae989fee4a..f0b89c5eb674 100644 --- a/lib/matplotlib/axes.py +++ b/lib/matplotlib/axes.py @@ -4792,11 +4792,10 @@ def make_iterable(x): if orientation == 'vertical': self._process_unit_info(xdata=left, ydata=height, kwargs=kwargs) if log: - self.set_yscale('log') + self.set_yscale('log', nonposy = 'clip') # size width and bottom according to length of left if _bottom is None: if self.get_yscale() == 'log': - bottom = [1e-100] adjust_ylim = True else: bottom = [0] @@ -4808,11 +4807,10 @@ def make_iterable(x): elif orientation == 'horizontal': self._process_unit_info(xdata=width, ydata=bottom, kwargs=kwargs) if log: - self.set_xscale('log') + self.set_xscale('log', nonposx = 'clip') # size left and height according to length of bottom if _left is None: if self.get_xscale() == 'log': - left = [1e-100] adjust_xlim = True else: left = [0] @@ -8118,7 +8116,7 @@ def hist(self, x, bins=10, range=None, normed=False, weights=None, if normed: db = np.diff(bins) m = (m.astype(float) / db) / m.sum() - if stacked: + if stacked : m += mlast mlast[:] = m n.append(m) @@ -8171,14 +8169,18 @@ def hist(self, x, bins=10, range=None, normed=False, weights=None, _barfunc = self.bar for m, c in zip(n, color): - patch = _barfunc(bins[:-1]+boffset, m, width, bottom, + if bottom is None: + bottom = np.zeros(len(m), np.float) + if stacked: + height = m-bottom + else : + height = m + patch = _barfunc(bins[:-1]+boffset, height, width, bottom, align='center', log=log, color=c, bottom=bottom) patches.append(patch) if stacked: - if bottom is None: - bottom = 0.0 - bottom += m + bottom[:] = m boffset += dw elif histtype.startswith('step'): @@ -8191,10 +8193,10 @@ def hist(self, x, bins=10, range=None, normed=False, weights=None, if log: if orientation == 'horizontal': - self.set_xscale('log') + self.set_xscale('log', nonposx = 'clip') logbase = self.xaxis._scale.base else: # orientation == 'vertical' - self.set_yscale('log') + self.set_yscale('log', nonposy = 'clip') logbase = self.yaxis._scale.base # Setting a minimum of 0 results in problems for log plots diff --git a/lib/matplotlib/tests/baseline_images/test_axes/hist_stacked_bar.pdf b/lib/matplotlib/tests/baseline_images/test_axes/hist_stacked_bar.pdf index 0315010f6dc3a6136c8b998ecfa9d740581f1d61..748ba5e1105d6ff3cceb3478f85fb0c8e1944c40 100644 GIT binary patch delta 6574 zcmZu#cOX^&`!~XM?Mt1{Bkr9f_?0s$FQbuODMkITevXivz9Yv)`_Lfy> z@VnIK`}?Hcf1LB2=Y5{_dOy$m{hTu?)_$?7iWv7etJi%D#T>O01QvTw)BDYiGmqxu zr6J-bzxUlI7P}PUiBu<^L>C08YcRtSPl&}2VVb|o2`w>+#^52>0KEu2r}Yd?s2nYI zqG~~9_{6vEJ4Io9sDsc`vI@6vTw_Vf;~kz&tY9CTmzPxIRz4@h9pyKn?p&NoIg(lu z)og+5&Yg*bR#bk`4V)H5ThDwZm-D#HxMc)t#q-X`Uc48~*#4GX*l6(fa_R2Yy7lhu z?^V)lDb5bHPrjroxDD%7la518U6UBqXxOzLV;$w88fi#JB3l|J7)F!EU@DLJIaykt z18I-JvKuOC3OW7uW04_Hm)}w2`i!clzLy;LdZS?9Im{*a0Si5j(WS zkue+2mBnmoMN7v&lWhL9%6!!cX zyijRb(up(a;kqKOrl#R;ck@0mvo?rq2ZT04CgLJRsczH^wvmmvIH<_z> zCgP$xgy@)wPknj`opQTNPmeH&Da$-*J(U+j_OXLzKk-!+&v;zaH`b=1D(gx8lUPb> zC_f#{dr(n=7bPM>jFT{?51?h@WDSCOO(?RRLCxsd^784e`%``LVq970_C?n`7aMNN zcxf9fSJ}cswl~OXPIFppCS$@Xp9;H&WLJ9}IWFqz%AYr`b*FnacT(UB;$bk)QwwsV z6BQR0oLIB36>+rwbE}{PKF^wdanKAzN-X?R*WlVqnEaxU@*)o7tYt=AXh9j5Rh1+v|h&^I)5 zQXm%YsBCxBY2L-Pop>stF*VC3z!!>p$^3?T;qh&66TBEZoK7yTfG6_wvlVQFA>AM? zJ8_{wqh}*2W0JNR>0q|Uo?upNfwNd;ZoPjDfDM)O9Nj-Aqg=FA^)W?nTFd2CR2*Srk3Xd@LwWsHSdol$_#}TGp&*HHX#Wcba{QUyGee zll$Nd>eO;*u}e=wTPWmcK5rMWZarNehhdxRt^9u1RX^-fG*Up~l$<(jE=gl89K}uNEbuV{xw9 z8Mm1i%Qzk&(0h}^Cp=q3OskjV`VLk<2ZadfDy;r+D=*Dc5;aaY#9FftG^WEcv*=Vd zVYTJ+R-c!bw|ZBbJ~sv2F$jvp5sThJSyMg0JYGM`vx>86S}9VOTfpp`Hpd^_+xhn9 zLGfyT;R}Q0=P1obpKG42v>;uvnLf)Z$+dJBI|i;zZ|wPn?Cm#uHit;-FHlm1qAktD zUKY=FaQc1 z60|TR2J=5I3cm^x&_|&GSy}Kefq-lT0%Zt2R|O?uEGdZs (^g`&*mWv{38k}>rX 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 delta 1471 zcmZXSYfw{16vqXM#PHN~iUP&e4oY|=_wLQj&8RxssoY2~BpRXwjHF5j zp;jecl_n@!l>z}pjjyqeh*S{5qbf}+BD8>_BA`$!Eh%k)eyC(W?413bGyn77vwJ)G zH_o|pHtOPn7HK5c4oD^enrg_kV5Qc3R)HtjVXcvpQ#vsV|P~Fy3;= zR@W|4P1AjpjU_niHf?P3EI5$;xGgE4gmwDnx@^fR)EW-%lq4>8 z>TDcMe(Lt4A1CZi=~X}U17(6o%2l4%=e5)79q+HtTI(jFXS2dY*u~n-#+mw1$3ur3 zLSK}&`i0u|HT)1gUYUa&kT%{8nNOWfnybnu_PgO3xwiQtmjlm;;OKs6{ZDxe8$Uhw9*kR1R zSv9z=P$=vrP98v`7QobBK21&Lw1t)nB_MGoSp<3mdD* ztGeiz6R@gCh?E?!aTvXObnKg!l8buKF}>2Fs~`EO+wD20 zD(dte*Pl;!&tMHG1;tcXmd)sLKFDdm#0S;oZ8X-$DTJ4`-g}!8x7$r;2C4zYsao09^w>cfDXe1Svm|~#_35do^ZlrN6!O$<;aao9T(F^ zXYDk78oDChsU>g*!vu)^B2AifBTj=x|zVzRW z3|hlv)5m8F(|t@|1JA`$u+@oec;#JU>k7DGVv&fFQ__u88i=9K&wKZM90IOLwoPu? z#oH;sO%p2t&bRzB@up;j0h^E53oQiY0|W>GSCK9QC@~q!q!d5}lktQCN=_a!DY*4p9h@ z@dc!SIT0W@LR#ERVJNgXnaX$;LsJ=H@imo^D4poHLJcu14UELB`eVfS1m4!bFx+y* zw;7KV;8Ph2ajPCEpEtp1dw*B8m1D~Qtdt=XU{jSL&bOKh6bP&s4vGKWNFh%YODH)r zC`7aY> BHTeJl diff --git a/lib/matplotlib/tests/baseline_images/test_axes/hist_stacked_bar.png b/lib/matplotlib/tests/baseline_images/test_axes/hist_stacked_bar.png index d2d9bb88997ace323981ee5e380a87ac8919099c..93455aff9c4832c27a6492943180c0d7d074523c 100644 GIT binary patch literal 10122 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 W-1E4%Sql9UIDF9EnR+1b;@<%y9afkC diff --git a/lib/matplotlib/tests/baseline_images/test_axes/hist_stacked_bar.svg b/lib/matplotlib/tests/baseline_images/test_axes/hist_stacked_bar.svg index f4c985eebbde..65a8edaefb2f 100644 --- a/lib/matplotlib/tests/baseline_images/test_axes/hist_stacked_bar.svg +++ b/lib/matplotlib/tests/baseline_images/test_axes/hist_stacked_bar.svg @@ -30,183 +30,543 @@ z +" style="fill:#93ff00;stroke:#000000;"/> +" style="fill:#93ff00;stroke:#000000;"/> +" style="fill:#93ff00;stroke:#000000;"/> +" style="fill:#93ff00;stroke:#000000;"/> +" style="fill:#93ff00;stroke:#000000;"/> +" style="fill:#93ff00;stroke:#000000;"/> +" style="fill:#93ff00;stroke:#000000;"/> +" style="fill:#93ff00;stroke:#000000;"/> +" style="fill:#93ff00;stroke:#000000;"/> +" style="fill:#93ff00;stroke:#000000;"/> +" style="fill:#00ff59;stroke:#000000;"/> +" style="fill:#00ff59;stroke:#000000;"/> +" style="fill:#00ff59;stroke:#000000;"/> +" style="fill:#00ff59;stroke:#000000;"/> +" style="fill:#00ff59;stroke:#000000;"/> +" style="fill:#00ff59;stroke:#000000;"/> +" style="fill:#00ff59;stroke:#000000;"/> +" style="fill:#00ff59;stroke:#000000;"/> +" style="fill:#00ff59;stroke:#000000;"/> +" style="fill:#00ff59;stroke:#000000;"/> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -261,16 +621,52 @@ Q19.5312 74.2188 31.7812 74.2188" id="BitstreamVeraSans-Roman-30"/> - + - + - + + + + + + + + + + + + + + + + + + + + + + + + - + + + - - + + - + - + - + - - + + + + + + + + + + + + + + + + + + + + + + + + + - + + + - - + + - + - + - + - - + + + + + + + + + + + + + + + + + + + + + + + + + - + + + - - + + - + - + - + - - + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - + - + - + - + @@ -510,147 +1011,554 @@ L-4 0" id="m0d5b0a6425" style="stroke:#000000;stroke-linecap:butt;stroke-width:0 - + - + - + - + - + - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + + + + + + + + + + + + + + + + + + + + - + - + - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/matplotlib/tests/test_axes.py b/lib/matplotlib/tests/test_axes.py index fb512b607bf5..b430792f4397 100644 --- a/lib/matplotlib/tests/test_axes.py +++ b/lib/matplotlib/tests/test_axes.py @@ -989,11 +989,23 @@ def test_hist_stacked_step(): @image_comparison(baseline_images=['hist_stacked_bar']) def test_hist_stacked_bar(): # make some data - d1 = np.linspace(1, 3, 20) - d2 = np.linspace(0, 10, 50) + d = [[100, 100, 100, 100, 200, 320, 450, 80, 20, 600, 310, 800], [20, 23, 50, 11, 100, 420], [120, 120, 120, 140, 140, 150, 180], [60, 60, 60, 60, 300, 300, 5, 5, 5, 5, 10, 300], [555, 555, 555, 30, 30, 30, 30, 30, 100, 100, 100, 100, 30, 30], [30, 30, 30, 30, 400, 400, 400, 400, 400, 400, 400, 400]] + colors = [(0.5759849696758961, 1.0, 0.0), (0.0, 1.0, 0.350624650815206), (0.0, 1.0, 0.6549834156005998), (0.0, 0.6569064625276622, 1.0), (0.28302699607823545, 0.0, 1.0), (0.6849123462299822, 0.0, 1.0)] + labels = ['green', 'orange', ' yellow', 'magenta', 'black'] + fig = plt.figure() + ax = fig.add_subplot(111) + ax.hist(d, bins=10, histtype='barstacked', align='mid', color=colors, label=labels) + ax.legend(loc='upper right', bbox_to_anchor = (1.0, 1.0), ncol=1) + +@image_comparison(baseline_images=['hist_offset']) +def test_hist_offset(): + # make some data + d1 = np.linspace(0, 10, 50) + d2 = np.linspace(1, 3, 20) fig = plt.figure() ax = fig.add_subplot(111) - ax.hist( (d1, d2), histtype="barstacked", stacked=True) + ax.hist(d1, bottom=5) + ax.hist(d2, bottom=15) @image_comparison(baseline_images=['transparent_markers'], remove_text=True) def test_transparent_markers(): From 3ce4b9606cf3ecb674ea94275fd0d2781cefed31 Mon Sep 17 00:00:00 2001 From: Nic Eggert Date: Thu, 28 Feb 2013 14:42:44 -0500 Subject: [PATCH 3/5] Update a few test baseline images --- .../test_axes/hist_stacked_weights.pdf | Bin 5634 -> 5707 bytes .../test_axes/hist_stacked_weights.png | Bin 6556 -> 6365 bytes .../test_axes/hist_stacked_weights.svg | 77 ++- .../test_axes/hist_steplog.pdf | Bin 7664 -> 9487 bytes .../test_axes/hist_steplog.png | Bin 20951 -> 20951 bytes .../test_axes/hist_steplog.svg | 600 +++++++++++++++++- 6 files changed, 654 insertions(+), 23 deletions(-) diff --git a/lib/matplotlib/tests/baseline_images/test_axes/hist_stacked_weights.pdf b/lib/matplotlib/tests/baseline_images/test_axes/hist_stacked_weights.pdf index 251f3d7dbd2beee824db3138e2efaa7567955589..63267de799ce7c4128153af0ad549e5847d42439 100644 GIT binary patch delta 1312 zcmZqDIjyr{17rQ$>AU+x4SCvr+qimV_`JCjtrF46SEv%lP$qb*ndR(0yK|*R#wQ&d zJ&V=06@OAa_dbQ~X}RO4W|yBTQ)?bRZw|P#%loyg{ru0DGagM_bw2;m#NRd?{%;t( zY7HASj}@Dia0uLZLnisnI|7S86W>N{bw^Hm(Krx^;M55_nfe8j=tu6 zK}=M0@uh|izB!RQ4Yd}$SmT(xRq#zYhX`NY&A(O|4sVrMm->F1yh-5Y6Y;D4h7J9W z*6Vw_SMGoMayR#WMrj!#N#V-|7nx-DZmQ_4;91}N{hCts);@tVhjdQ}y0rUE-fZ=| znNj%3C3)KgowqI8loUE!=Nr~@L{*!JtT|t|zA<&<2ky5z5k`u?G9D{*?k`#I78w-2 zIc81P)YjB%VUhFlPt~w*4xdw2t=0RkjO&Y^XJlp4!|5J;99PZ!g8$snS87}|N7wIa zm<9Lujc05+o4xml%0Hd2HOKq+{VU%SXD!nEX7byWPt5Z5)!I`Zv;6;se-ACaUhloI zZ|7#0&8KXZg~eXJqm}7B?M9^S#o)znuAj-OzMo{h`c+1rsOz=BZ(*xAkD9OXGS`XE z7rrYUU;XX$r?_{%%u82Ys^6J(5_5mTtB`Q2&xgKDg#RXa0vQ^9pnQheztK@6)*> zvca<1-Sy6HJE<=f2+%rnOR&bcM6y* zGk+4DJaOmNdd2Jo3e`D%Dkpxwx~%!~P}F(5SgBPHf|3`DmN#xakyWWVyTi<0{Fm>7 zkW|sBvzgblX{~dg{_{+>Q?>)|&p90CiHo({C#*ip80{>2dvW)iqW&q@c`Yt#Gke}v zn|0|s2Tt|N-HEK)|O({joY|Q zP1_C~$z7?tDQZRdQimz;l@9IfGLc^u>blgDA$x^VbqS}g(WCPDb9)NbEv}onmAS5r zW#-%Lk6F>VcIBU>4{*GzdbIwA;LhJ%qVv<*ABoMWKlzU7cDc^(qxn`_c$m3T^HPdS zic%AEL9G0wEG|RC$q!iAnJvr>H@{+OHCKe`!m}2I}m|~VD7-E)&rkG;JX6RxD24-M&ljn<=)*BmIqRShb zSsGx7nV4gkZER?0gs#rS+yuj|hQ`Jib{Lu)fyEM#J#S=Siea&lkpYG!M#g3so;NZx a!3a!K14Hx4n?+r@49zUKR8?L5-M9erF9@pu delta 1231 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 AQUCw| literal 6556 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 +L518.4 66.4751 +L473.76 66.4751 +L473.76 100.663 +L429.12 100.663 +L429.12 134.851 +L384.48 134.851 +L384.48 169.038 +L339.84 169.038 +L339.84 203.226 +L295.2 203.226 +L295.2 237.414 +L250.56 237.414 +L250.56 271.602 +L205.92 271.602 +L205.92 305.789 +L161.28 305.789 +L161.28 339.977 +L116.64 339.977 +L116.64 374.165 +L72 374.165" style="fill:#008000;stroke:#000000;"/> +L429.12 388.8 +L429.12 388.8 +L384.48 388.8 +L384.48 388.8 +L339.84 388.8 +L339.84 388.8 +L295.2 388.8 +L295.2 388.8 +L250.56 388.8 +L250.56 388.8 +L205.92 388.8 +L205.92 388.8 +L161.28 388.8 +L161.28 388.8 +L116.64 388.8 +L116.64 388.8" style="fill:#0000ff;stroke:#000000;"/> diff --git a/lib/matplotlib/tests/baseline_images/test_axes/hist_steplog.pdf b/lib/matplotlib/tests/baseline_images/test_axes/hist_steplog.pdf index d536ef47719f4cb0af8bccab09b66c5cfde7d5d2..36a42d813a474c71c0f68f9340060c3137636b2c 100644 GIT binary patch delta 8635 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 XrNk3ExmB)8fyE@qcz9HGA!PpnI*nc` diff --git a/lib/matplotlib/tests/baseline_images/test_axes/hist_steplog.png b/lib/matplotlib/tests/baseline_images/test_axes/hist_steplog.png index 70db9c3684a7eb7bbabc84639e74c6f7d31e6034..487c3bab1bb8486dca3e9e83b1130476d0570899 100644 GIT binary patch literal 20951 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 literal 20951 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 G2~7a?14)Sh diff --git a/lib/matplotlib/tests/baseline_images/test_axes/hist_steplog.svg b/lib/matplotlib/tests/baseline_images/test_axes/hist_steplog.svg index 74deaa25053d..691fb3f7a4b0 100644 --- a/lib/matplotlib/tests/baseline_images/test_axes/hist_steplog.svg +++ b/lib/matplotlib/tests/baseline_images/test_axes/hist_steplog.svg @@ -231,7 +231,205 @@ L460.545 144.847 L464.51 144.847 L464.51 110.965 L468.474 110.965 -L468.474 144.847" style="fill:#0000ff;stroke:#000000;"/> +L468.474 144.847 +L464.51 144.847 +L464.51 144.847 +L460.545 144.847 +L460.545 144.847 +L456.58 144.847 +L456.58 144.847 +L452.616 144.847 +L452.616 144.847 +L448.651 144.847 +L448.651 144.847 +L444.686 144.847 +L444.686 144.847 +L440.721 144.847 +L440.721 144.847 +L436.757 144.847 +L436.757 144.847 +L432.792 144.847 +L432.792 144.847 +L428.827 144.847 +L428.827 144.847 +L424.862 144.847 +L424.862 144.847 +L420.898 144.847 +L420.898 144.847 +L416.933 144.847 +L416.933 144.847 +L412.968 144.847 +L412.968 144.847 +L409.003 144.847 +L409.003 144.847 +L405.039 144.847 +L405.039 144.847 +L401.074 144.847 +L401.074 144.847 +L397.109 144.847 +L397.109 144.847 +L393.144 144.847 +L393.144 144.847 +L389.18 144.847 +L389.18 144.847 +L385.215 144.847 +L385.215 144.847 +L381.25 144.847 +L381.25 144.847 +L377.285 144.847 +L377.285 144.847 +L373.321 144.847 +L373.321 144.847 +L369.356 144.847 +L369.356 144.847 +L365.391 144.847 +L365.391 144.847 +L361.426 144.847 +L361.426 144.847 +L357.462 144.847 +L357.462 144.847 +L353.497 144.847 +L353.497 144.847 +L349.532 144.847 +L349.532 144.847 +L345.567 144.847 +L345.567 144.847 +L341.603 144.847 +L341.603 144.847 +L337.638 144.847 +L337.638 144.847 +L333.673 144.847 +L333.673 144.847 +L329.708 144.847 +L329.708 144.847 +L325.744 144.847 +L325.744 144.847 +L321.779 144.847 +L321.779 144.847 +L317.814 144.847 +L317.814 144.847 +L313.849 144.847 +L313.849 144.847 +L309.885 144.847 +L309.885 144.847 +L305.92 144.847 +L305.92 144.847 +L301.955 144.847 +L301.955 144.847 +L297.99 144.847 +L297.99 144.847 +L294.026 144.847 +L294.026 144.847 +L290.061 144.847 +L290.061 144.847 +L286.096 144.847 +L286.096 144.847 +L282.131 144.847 +L282.131 144.847 +L278.167 144.847 +L278.167 144.847 +L274.202 144.847 +L274.202 144.847 +L270.237 144.847 +L270.237 144.847 +L266.272 144.847 +L266.272 144.847 +L262.308 144.847 +L262.308 144.847 +L258.343 144.847 +L258.343 144.847 +L254.378 144.847 +L254.378 144.847 +L250.414 144.847 +L250.414 144.847 +L246.449 144.847 +L246.449 144.847 +L242.484 144.847 +L242.484 144.847 +L238.519 144.847 +L238.519 144.847 +L234.555 144.847 +L234.555 144.847 +L230.59 144.847 +L230.59 144.847 +L226.625 144.847 +L226.625 144.847 +L222.66 144.847 +L222.66 144.847 +L218.696 144.847 +L218.696 144.847 +L214.731 144.847 +L214.731 144.847 +L210.766 144.847 +L210.766 144.847 +L206.801 144.847 +L206.801 144.847 +L202.837 144.847 +L202.837 144.847 +L198.872 144.847 +L198.872 144.847 +L194.907 144.847 +L194.907 144.847 +L190.942 144.847 +L190.942 144.847 +L186.978 144.847 +L186.978 144.847 +L183.013 144.847 +L183.013 144.847 +L179.048 144.847 +L179.048 144.847 +L175.083 144.847 +L175.083 144.847 +L171.119 144.847 +L171.119 144.847 +L167.154 144.847 +L167.154 144.847 +L163.189 144.847 +L163.189 144.847 +L159.224 144.847 +L159.224 144.847 +L155.26 144.847 +L155.26 144.847 +L151.295 144.847 +L151.295 144.847 +L147.33 144.847 +L147.33 144.847 +L143.365 144.847 +L143.365 144.847 +L139.401 144.847 +L139.401 144.847 +L135.436 144.847 +L135.436 144.847 +L131.471 144.847 +L131.471 144.847 +L127.506 144.847 +L127.506 144.847 +L123.542 144.847 +L123.542 144.847 +L119.577 144.847 +L119.577 144.847 +L115.612 144.847 +L115.612 144.847 +L111.647 144.847 +L111.647 144.847 +L107.683 144.847 +L107.683 144.847 +L103.718 144.847 +L103.718 144.847 +L99.7532 144.847 +L99.7532 144.847 +L95.7885 144.847 +L95.7885 144.847 +L91.8237 144.847 +L91.8237 144.847 +L87.859 144.847 +L87.859 144.847 +L83.8942 144.847 +L83.8942 144.847 +L79.9295 144.847 +L79.9295 144.847 +L75.9647 144.847 +L75.9647 144.847" style="fill:#0000ff;stroke:#000000;"/> @@ -933,7 +1131,205 @@ L466.922 266.824 L470.887 266.824 L470.887 232.941 L474.852 232.941 -L474.852 266.824" style="fill:#0000ff;stroke:#000000;"/> +L474.852 266.824 +L470.887 266.824 +L470.887 266.824 +L466.922 266.824 +L466.922 266.824 +L462.957 266.824 +L462.957 266.824 +L458.993 266.824 +L458.993 266.824 +L455.028 266.824 +L455.028 266.824 +L451.063 266.824 +L451.063 266.824 +L447.098 266.824 +L447.098 266.824 +L443.134 266.824 +L443.134 266.824 +L439.169 266.824 +L439.169 266.824 +L435.204 266.824 +L435.204 266.824 +L431.239 266.824 +L431.239 266.824 +L427.275 266.824 +L427.275 266.824 +L423.31 266.824 +L423.31 266.824 +L419.345 266.824 +L419.345 266.824 +L415.38 266.824 +L415.38 266.824 +L411.416 266.824 +L411.416 266.824 +L407.451 266.824 +L407.451 266.824 +L403.486 266.824 +L403.486 266.824 +L399.521 266.824 +L399.521 266.824 +L395.557 266.824 +L395.557 266.824 +L391.592 266.824 +L391.592 266.824 +L387.627 266.824 +L387.627 266.824 +L383.662 266.824 +L383.662 266.824 +L379.698 266.824 +L379.698 266.824 +L375.733 266.824 +L375.733 266.824 +L371.768 266.824 +L371.768 266.824 +L367.804 266.824 +L367.804 266.824 +L363.839 266.824 +L363.839 266.824 +L359.874 266.824 +L359.874 266.824 +L355.909 266.824 +L355.909 266.824 +L351.945 266.824 +L351.945 266.824 +L347.98 266.824 +L347.98 266.824 +L344.015 266.824 +L344.015 266.824 +L340.05 266.824 +L340.05 266.824 +L336.086 266.824 +L336.086 266.824 +L332.121 266.824 +L332.121 266.824 +L328.156 266.824 +L328.156 266.824 +L324.191 266.824 +L324.191 266.824 +L320.227 266.824 +L320.227 266.824 +L316.262 266.824 +L316.262 266.824 +L312.297 266.824 +L312.297 266.824 +L308.332 266.824 +L308.332 266.824 +L304.368 266.824 +L304.368 266.824 +L300.403 266.824 +L300.403 266.824 +L296.438 266.824 +L296.438 266.824 +L292.473 266.824 +L292.473 266.824 +L288.509 266.824 +L288.509 266.824 +L284.544 266.824 +L284.544 266.824 +L280.579 266.824 +L280.579 266.824 +L276.614 266.824 +L276.614 266.824 +L272.65 266.824 +L272.65 266.824 +L268.685 266.824 +L268.685 266.824 +L264.72 266.824 +L264.72 266.824 +L260.755 266.824 +L260.755 266.824 +L256.791 266.824 +L256.791 266.824 +L252.826 266.824 +L252.826 266.824 +L248.861 266.824 +L248.861 266.824 +L244.896 266.824 +L244.896 266.824 +L240.932 266.824 +L240.932 266.824 +L236.967 266.824 +L236.967 266.824 +L233.002 266.824 +L233.002 266.824 +L229.037 266.824 +L229.037 266.824 +L225.073 266.824 +L225.073 266.824 +L221.108 266.824 +L221.108 266.824 +L217.143 266.824 +L217.143 266.824 +L213.178 266.824 +L213.178 266.824 +L209.214 266.824 +L209.214 266.824 +L205.249 266.824 +L205.249 266.824 +L201.284 266.824 +L201.284 266.824 +L197.319 266.824 +L197.319 266.824 +L193.355 266.824 +L193.355 266.824 +L189.39 266.824 +L189.39 266.824 +L185.425 266.824 +L185.425 266.824 +L181.461 266.824 +L181.461 266.824 +L177.496 266.824 +L177.496 266.824 +L173.531 266.824 +L173.531 266.824 +L169.566 266.824 +L169.566 266.824 +L165.602 266.824 +L165.602 266.824 +L161.637 266.824 +L161.637 266.824 +L157.672 266.824 +L157.672 266.824 +L153.707 266.824 +L153.707 266.824 +L149.743 266.824 +L149.743 266.824 +L145.778 266.824 +L145.778 266.824 +L141.813 266.824 +L141.813 266.824 +L137.848 266.824 +L137.848 266.824 +L133.884 266.824 +L133.884 266.824 +L129.919 266.824 +L129.919 266.824 +L125.954 266.824 +L125.954 266.824 +L121.989 266.824 +L121.989 266.824 +L118.025 266.824 +L118.025 266.824 +L114.06 266.824 +L114.06 266.824 +L110.095 266.824 +L110.095 266.824 +L106.13 266.824 +L106.13 266.824 +L102.166 266.824 +L102.166 266.824 +L98.2009 266.824 +L98.2009 266.824 +L94.2361 266.824 +L94.2361 266.824 +L90.2714 266.824 +L90.2714 266.824 +L86.3066 266.824 +L86.3066 266.824 +L82.3419 266.824 +L82.3419 266.824" style="fill:#0000ff;stroke:#000000;"/> @@ -1605,7 +2001,205 @@ L466.922 388.8 L470.887 388.8 L470.887 354.918 L474.852 354.918 -L474.852 388.8" style="fill:#0000ff;stroke:#000000;"/> +L474.852 388.8 +L470.887 388.8 +L470.887 388.8 +L466.922 388.8 +L466.922 388.8 +L462.957 388.8 +L462.957 388.8 +L458.993 388.8 +L458.993 388.8 +L455.028 388.8 +L455.028 388.8 +L451.063 388.8 +L451.063 388.8 +L447.098 388.8 +L447.098 388.8 +L443.134 388.8 +L443.134 388.8 +L439.169 388.8 +L439.169 388.8 +L435.204 388.8 +L435.204 388.8 +L431.239 388.8 +L431.239 388.8 +L427.275 388.8 +L427.275 388.8 +L423.31 388.8 +L423.31 388.8 +L419.345 388.8 +L419.345 388.8 +L415.38 388.8 +L415.38 388.8 +L411.416 388.8 +L411.416 388.8 +L407.451 388.8 +L407.451 388.8 +L403.486 388.8 +L403.486 388.8 +L399.521 388.8 +L399.521 388.8 +L395.557 388.8 +L395.557 388.8 +L391.592 388.8 +L391.592 388.8 +L387.627 388.8 +L387.627 388.8 +L383.662 388.8 +L383.662 388.8 +L379.698 388.8 +L379.698 388.8 +L375.733 388.8 +L375.733 388.8 +L371.768 388.8 +L371.768 388.8 +L367.804 388.8 +L367.804 388.8 +L363.839 388.8 +L363.839 388.8 +L359.874 388.8 +L359.874 388.8 +L355.909 388.8 +L355.909 388.8 +L351.945 388.8 +L351.945 388.8 +L347.98 388.8 +L347.98 388.8 +L344.015 388.8 +L344.015 388.8 +L340.05 388.8 +L340.05 388.8 +L336.086 388.8 +L336.086 388.8 +L332.121 388.8 +L332.121 388.8 +L328.156 388.8 +L328.156 388.8 +L324.191 388.8 +L324.191 388.8 +L320.227 388.8 +L320.227 388.8 +L316.262 388.8 +L316.262 388.8 +L312.297 388.8 +L312.297 388.8 +L308.332 388.8 +L308.332 388.8 +L304.368 388.8 +L304.368 388.8 +L300.403 388.8 +L300.403 388.8 +L296.438 388.8 +L296.438 388.8 +L292.473 388.8 +L292.473 388.8 +L288.509 388.8 +L288.509 388.8 +L284.544 388.8 +L284.544 388.8 +L280.579 388.8 +L280.579 388.8 +L276.614 388.8 +L276.614 388.8 +L272.65 388.8 +L272.65 388.8 +L268.685 388.8 +L268.685 388.8 +L264.72 388.8 +L264.72 388.8 +L260.755 388.8 +L260.755 388.8 +L256.791 388.8 +L256.791 388.8 +L252.826 388.8 +L252.826 388.8 +L248.861 388.8 +L248.861 388.8 +L244.896 388.8 +L244.896 388.8 +L240.932 388.8 +L240.932 388.8 +L236.967 388.8 +L236.967 388.8 +L233.002 388.8 +L233.002 388.8 +L229.037 388.8 +L229.037 388.8 +L225.073 388.8 +L225.073 388.8 +L221.108 388.8 +L221.108 388.8 +L217.143 388.8 +L217.143 388.8 +L213.178 388.8 +L213.178 388.8 +L209.214 388.8 +L209.214 388.8 +L205.249 388.8 +L205.249 388.8 +L201.284 388.8 +L201.284 388.8 +L197.319 388.8 +L197.319 388.8 +L193.355 388.8 +L193.355 388.8 +L189.39 388.8 +L189.39 388.8 +L185.425 388.8 +L185.425 388.8 +L181.461 388.8 +L181.461 388.8 +L177.496 388.8 +L177.496 388.8 +L173.531 388.8 +L173.531 388.8 +L169.566 388.8 +L169.566 388.8 +L165.602 388.8 +L165.602 388.8 +L161.637 388.8 +L161.637 388.8 +L157.672 388.8 +L157.672 388.8 +L153.707 388.8 +L153.707 388.8 +L149.743 388.8 +L149.743 388.8 +L145.778 388.8 +L145.778 388.8 +L141.813 388.8 +L141.813 388.8 +L137.848 388.8 +L137.848 388.8 +L133.884 388.8 +L133.884 388.8 +L129.919 388.8 +L129.919 388.8 +L125.954 388.8 +L125.954 388.8 +L121.989 388.8 +L121.989 388.8 +L118.025 388.8 +L118.025 388.8 +L114.06 388.8 +L114.06 388.8 +L110.095 388.8 +L110.095 388.8 +L106.13 388.8 +L106.13 388.8 +L102.166 388.8 +L102.166 388.8 +L98.2009 388.8 +L98.2009 388.8 +L94.2361 388.8 +L94.2361 388.8 +L90.2714 388.8 +L90.2714 388.8 +L86.3066 388.8 +L86.3066 388.8 +L82.3419 388.8 +L82.3419 388.8" style="fill:#0000ff;stroke:#000000;"/> From fa85f9b45a2930c4f4a6550a17c1015952abdf9b Mon Sep 17 00:00:00 2001 From: Nic Eggert Date: Thu, 28 Feb 2013 14:59:12 -0500 Subject: [PATCH 4/5] PEP8 fixes --- lib/matplotlib/axes.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/lib/matplotlib/axes.py b/lib/matplotlib/axes.py index f0b89c5eb674..28f913aa924d 100644 --- a/lib/matplotlib/axes.py +++ b/lib/matplotlib/axes.py @@ -4792,7 +4792,7 @@ def make_iterable(x): if orientation == 'vertical': self._process_unit_info(xdata=left, ydata=height, kwargs=kwargs) if log: - self.set_yscale('log', nonposy = 'clip') + self.set_yscale('log', nonposy='clip') # size width and bottom according to length of left if _bottom is None: if self.get_yscale() == 'log': @@ -4807,7 +4807,7 @@ def make_iterable(x): elif orientation == 'horizontal': self._process_unit_info(xdata=width, ydata=bottom, kwargs=kwargs) if log: - self.set_xscale('log', nonposx = 'clip') + self.set_xscale('log', nonposx='clip') # size left and height according to length of bottom if _left is None: if self.get_xscale() == 'log': @@ -8116,7 +8116,7 @@ def hist(self, x, bins=10, range=None, normed=False, weights=None, if normed: db = np.diff(bins) m = (m.astype(float) / db) / m.sum() - if stacked : + if stacked: m += mlast mlast[:] = m n.append(m) @@ -8172,10 +8172,10 @@ def hist(self, x, bins=10, range=None, normed=False, weights=None, if bottom is None: bottom = np.zeros(len(m), np.float) if stacked: - height = m-bottom + height = m - bottom else : height = m - patch = _barfunc(bins[:-1]+boffset, height, width, bottom, + patch = _barfunc(bins[:-1]+boffset, height, width, align='center', log=log, color=c, bottom=bottom) patches.append(patch) From 9a83e9f5ab56455eddc03eaca84b641b1fd5d9fe Mon Sep 17 00:00:00 2001 From: Nic Eggert Date: Thu, 28 Feb 2013 17:22:27 -0500 Subject: [PATCH 5/5] Remove duplicate test_hist_offset --- lib/matplotlib/tests/test_axes.py | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/lib/matplotlib/tests/test_axes.py b/lib/matplotlib/tests/test_axes.py index b430792f4397..194bcf9ba06f 100644 --- a/lib/matplotlib/tests/test_axes.py +++ b/lib/matplotlib/tests/test_axes.py @@ -997,16 +997,6 @@ def test_hist_stacked_bar(): ax.hist(d, bins=10, histtype='barstacked', align='mid', color=colors, label=labels) ax.legend(loc='upper right', bbox_to_anchor = (1.0, 1.0), ncol=1) -@image_comparison(baseline_images=['hist_offset']) -def test_hist_offset(): - # make some data - d1 = np.linspace(0, 10, 50) - d2 = np.linspace(1, 3, 20) - fig = plt.figure() - ax = fig.add_subplot(111) - ax.hist(d1, bottom=5) - ax.hist(d2, bottom=15) - @image_comparison(baseline_images=['transparent_markers'], remove_text=True) def test_transparent_markers(): np.random.seed(0)