From f24d1bd0e2ac95d6dd08101eb641eadd106979ce Mon Sep 17 00:00:00 2001 From: Jens Hedegaard Nielsen Date: Tue, 19 Jan 2016 08:57:00 +0000 Subject: [PATCH 1/6] Remove reference to changelog from frontpage Fixes link checker issue in documentation --- doc/_templates/index.html | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/doc/_templates/index.html b/doc/_templates/index.html index 4d235eb8b456..0343730ec5c1 100644 --- a/doc/_templates/index.html +++ b/doc/_templates/index.html @@ -147,9 +147,7 @@

Need help?

To keep up to date with what's going on in matplotlib, see the what's new -page, the more detailed changelog or browse -the source +page or browse the source code. Anything that could require changes to your existing code is logged in the api changes file.

From b7dfa4fa7a69d091dac0ead295d28422c4e33b45 Mon Sep 17 00:00:00 2001 From: Thomas A Caswell Date: Sun, 24 Jan 2016 13:05:18 -0500 Subject: [PATCH 2/6] Merge pull request #5872 from jenshnielsen/sphinx134 DOC: Fix issue with Sphinx 1.3.4 Discarded changes to .travis.yml from #5872 --- lib/matplotlib/dviread.py | 2 +- lib/matplotlib/patches.py | 18 ++++++++++++------ 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/lib/matplotlib/dviread.py b/lib/matplotlib/dviread.py index db6e9764679d..1141f6aa08e1 100644 --- a/lib/matplotlib/dviread.py +++ b/lib/matplotlib/dviread.py @@ -841,7 +841,7 @@ def find_tex_file(filename, format=None): """ Call :program:`kpsewhich` to find a file in the texmf tree. If *format* is not None, it is used as the value for the - :option:`--format` option. + `--format` option. Apparently most existing TeX distributions on Unix-like systems use kpathsea. I hear MikTeX (a popular distribution on Windows) diff --git a/lib/matplotlib/patches.py b/lib/matplotlib/patches.py index b8b736383d9f..917eca7d387c 100644 --- a/lib/matplotlib/patches.py +++ b/lib/matplotlib/patches.py @@ -2992,15 +2992,21 @@ class Bar(_Base): def __init__(self, armA=0., armB=0., fraction=0.3, angle=None): """ - *armA* : minimum length of armA + Parameters + ---------- + armA : float + minimum length of armA - *armB* : minimum length of armB + armB : float + minimum length of armB - *fraction* : a fraction of the distance between two points that - will be added to armA and armB. + fraction : float + a fraction of the distance between two points that + will be added to armA and armB. - *angle* : angle of the connecting line (if None, parallel to A - and B) + angle : float or None + angle of the connecting line (if None, parallel + to A and B) """ self.armA = armA self.armB = armB From cd866e9ef04d100fe9f0059a39136162475e4dcf Mon Sep 17 00:00:00 2001 From: Michael Droettboom Date: Mon, 25 Jan 2016 08:42:39 -0500 Subject: [PATCH 3/6] Merge pull request #5880 from zblz/fix-primes mathtext: Fix bugs in conversion of apostrophes to primes --- lib/matplotlib/mathtext.py | 8 +- .../test_mathtext/mathtext_cm_31.pdf | Bin 5456 -> 9866 bytes .../test_mathtext/mathtext_cm_31.png | Bin 820 -> 2145 bytes .../test_mathtext/mathtext_cm_31.svg | 233 ++++++++++++++++-- .../test_mathtext/mathtext_dejavusans_31.pdf | Bin 0 -> 8309 bytes .../test_mathtext/mathtext_dejavusans_31.png | Bin 0 -> 2183 bytes .../test_mathtext/mathtext_dejavusans_31.svg | 151 ++++++++++++ .../test_mathtext/mathtext_dejavuserif_31.pdf | Bin 0 -> 8512 bytes .../test_mathtext/mathtext_dejavuserif_31.png | Bin 0 -> 2277 bytes .../test_mathtext/mathtext_dejavuserif_31.svg | 181 ++++++++++++++ .../test_mathtext/mathtext_stix_31.pdf | Bin 5409 -> 7628 bytes .../test_mathtext/mathtext_stix_31.png | Bin 812 -> 1993 bytes .../test_mathtext/mathtext_stix_31.svg | 178 +++++++++++-- .../test_mathtext/mathtext_stixsans_31.pdf | Bin 5310 -> 7099 bytes .../test_mathtext/mathtext_stixsans_31.png | Bin 729 -> 1889 bytes .../test_mathtext/mathtext_stixsans_31.svg | 118 +++++++-- lib/matplotlib/tests/test_mathtext.py | 2 +- 17 files changed, 819 insertions(+), 52 deletions(-) create mode 100644 lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_dejavusans_31.pdf create mode 100644 lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_dejavusans_31.png create mode 100644 lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_dejavusans_31.svg create mode 100644 lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_dejavuserif_31.pdf create mode 100644 lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_dejavuserif_31.png create mode 100644 lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_dejavuserif_31.svg diff --git a/lib/matplotlib/mathtext.py b/lib/matplotlib/mathtext.py index 836d4e07069f..1fb338d2c981 100644 --- a/lib/matplotlib/mathtext.py +++ b/lib/matplotlib/mathtext.py @@ -2701,12 +2701,15 @@ def subsuper(self, s, loc, toks): sub = None super = None - # Pick all of the apostrophe's out + # Pick all of the apostrophes out, including first apostrophes that have + # been parsed as characters napostrophes = 0 new_toks = [] for tok in toks[0]: if isinstance(tok, six.string_types) and tok not in ('^', '_'): napostrophes += len(tok) + elif isinstance(tok, Char) and tok.c == "'": + napostrophes += 1 else: new_toks.append(tok) toks = new_toks @@ -2761,6 +2764,9 @@ def subsuper(self, s, loc, toks): super = Hlist([]) for i in range(napostrophes): super.children.extend(self.symbol(s, loc, ['\prime'])) + # kern() and hpack() needed to get the metrics right after extending + super.kern() + super.hpack() # Handle over/under symbols, such as sum or integral if self.is_overunder(nucleus): diff --git a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_cm_31.pdf b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_cm_31.pdf index ee8cc7b4cc2d58c99b86832b88674e435db859ab..532b5cefcfad9496529db2eb5d69d6a2c398c292 100644 GIT binary patch literal 9866 zcmd5?30#cZ`?r*8L@wge_L7j6*|#KGv`D2*3og?%)zHjjW}=iVQAxU$vLsyzMTD+o zSGYn+$R$e)u1j()mG#E|Id3z~sQg?$_w)JRd|vOo&pGEg&-1)z`F_vy8qKh?HzS+V z2u6GFVg<(tWQ>G~0_GDeEis~3WEc-4+H$0vP*E^OoWTj^NiYgj@W8CB2s~jRs>o7m zFf~Hz;3?%uc^D0^1x=(+*{(IbI4LoDKY@}$@-P-bTj9q=Ng7|}@pifv?fTiM+S zn}ZSUMM5b??NH_G7BHX3m14{eRh}W7K)x^-W8kF# zmWbL=n&t>Yd7DVRRbmvm<~gZYX-tK-w*QsB^iw(|N*RX$VF}?*I(6=Z8Y@ z;2sJQwc~L`fjrcmL@MTS1cZpJohb)h&yh6a7EfMXe!Ma1*%(*K0j%t@p16U!OH3Wrc)X94%58% zKFshk9Xj!nUdEL3H^x*X=`vdDB^iBuE*1~5q@FhGvoQH8?+kNvqwPcC%|^!!iQ-Mm zmNN_YZzWAQSjayypq40dOD`6`zaoh_^wI0s?DSI!C-&{J_TCp|T1#yIc&yBycm2tUKJ(+qG93e>wZcy$$7)SWK4UykCwruX13noe@pY&a4gJ~4>40!bu{cYK<-aHL{BJ_5~2 zBs75FU*|6vik{&CQhYk2F-axhZR~gwu9zPt6^SvjY?j&c#S*D)2uBR8gGh;JIFexZBjLBpxrWGCorHPL`kjDs>eQv$Ago~yh zlf;At1{O3v*IF1H%0q72a>5*W{NNB-sjuvTM1XnU(aMa?gnBNV2;4_-ktB=ym#rko zCO@)7Db7SsDNisH^$N2(Sb|Y0N=qpoI^@DEj7cZ`8yDew^+3Q$;3Qpkp$7sk!T)12 znH}Z$69Z-=x)kM|l_*SlhnT@&VCZ78Sm+|4@kyuC@e9dOM@$N(;{xrd2c(n9W?>9E zlv5ZWBf}la$gsY$X&8$}gLRfhV4(U83dUfuJ6;Wo0?OFXA)Ah|U|C?%Kp6=-g9Z!= z9TZbAHVY}Df>A8!6yyvBL2hK{UFH}K+9_Z1s8GQfbWy+nxeOT%zX?djqEhjfi0(A7 zL#`J&hc0EExU(`jUalAb-~AGMc=_L?3!(@XAy3d9e?^Kr0k=|C*4dN%8SeNXkcZ{7 z%BT`@ucPwkiew5DV@ck!b4+#irHGJxs(h1o|3eSb_n*);r*m^di>!Qg>sTxC{Z1K) zQIxTp3`64i@2n3?b<{A>2-PhSlHZ+~UZMHn z<;?nJeKe1om4un^x;3yuICtXui;pG=wk>bmzh?Q%54Ub<9_1V*8$8WVnHE(Wx8k;Q zuaDWI&!&x@ouKmMi$-&Z~f#m!XCV9ED-=`iY)i*!NtlZcd&;C&E ztM$Y;)#AvkF;8~hOjXm;EH2;qbYcDKBhTI#l!k=3cHetpQBp)+9#tys>rtKL?p)ZH ztbXT;arBDRGviXS^1OYPzNxpewV%Ub&r9Mi;LPhMY#VTIWmaF&(E$CX=b0b2T_5VE z7cpm@sTOyL#5??y;{>7m>ZZ7T<`xTfrNnQyuo*y32{PKC@{@n$nCpKuJ2GnuBxi%1 zu36`{4*flb&zLpoWZ9cbAt|*2KW;&^vBroLM>|%ar|s>H8e=y;k-pvaV4GWk_c2ZT zlZ5hf$E`|+jUW|D<_$@I=SO7UeA4u^y~O23_%4&}0glW0v*I473Jn93)59`| zg8n|oX2Q^%!;?(kgGMfg?^t};Y7C1ia+^NLgDJu{pLz9tN1Ms*cy;H z!uvVD(J%Z=X}{Mqn)Ghm^%K~8W^v1!E7dipu+y;>1Cr-+N?%;99WqBF?{5UL{~Ob%p#0r;Fn z0s;WPSwR1wjLHCfO{U_Y5n*{Yyd)gSfgV&B*Fgos0OSJKAw!8|^!ntG4}ooD02qV= zb!3>_Alyi3jKDckg6?SZlFLy&{2BD2-*})9lL1{gqX9XUO@<5F0XdM%kTHn8pbOUx zeSQv+WtRSbVox*zP*mk_odHfD)`AC)Lg|3&=*@uR@?heQv0${IAi#y%qN_7dG7gFA z<3U7J5Ad}-2>4s-co`U*M1i0HEkhk31*k!1M~VO`%l;EUy$2h=%dSqqkFUR-fFGS5 z;>##Sc21+Tn&JQzjtj*YP5|InBnE^Qt=@{$5jaNahGH4$+~sS)fS&Fw9z#~QdlODD zul}J=PJN_hqxY5el9s_YOz+OiSvkguwqe$;4$bjB%)J_K#O^z#XirH+OStImjttLKX^~1od^mP=ag+A>^LnmY!~JiMt)ICx zCLng!ro+3JevHXxSG=?OHKXsITQTcOFRn1Wud$ZDcF9to*CV`LpY?LDVJsihFlxDa zWw6_0y{Su9ZS+3-T*GUOOMyq+=&hmi4@pW2`ca!&#-|-Bc1zv7M`P=V(Wm>m`L%8> z3i>p6T)hQ5Ja&A;>V$+-quzutE5bt8iPd>6Y14vt@O->fM4GNs`eeGZ7W262Nya6t z(ZAX?+{em~joUrMYsW$DiM1nq^OqI1MGC4C8?^7Am@{^m>I9v-Q59Y#cYRxH_IQ#t zKI-mM$*n6~buPnl;YOE}t(n75Xy`ofxluSW;K%{h!7a^cRLvt}*35I;;AiBgt6}f7 z*YJB}-M$=vqQ;n@rC=qrmYNgEztaGzPEn|&#Je7V{^(;DjI#m|Zs z3tydzSjcr)JkM#9LsVW)yUPsr$vIJZF?;q$8U9qTJMVp9Q|8?o(vLTJTB@afzqjPD zm(DM|_dIrVA1l341`~~%nMMfy0@dqW<>Y`!y20Yj&S2Ka)TE_O>ne>YER> z`kiOQyuas_;B0c~cI}9!V#c4d9ZZ@FPrp1B ztY3QnWthqm`^|Gi{auYTCJkC55#Q9oTt*CWZ(HKKEW3W0MQ&f`?$C*f@QHkW$dE3X z_76A){paKRY{{CoQEp|b`dCF8?~260!{|dvj%l8SO54u0QyPXWo39hpw{hjCy5yZY zzZ7iGtZ8(Q&Rk=7{>+y7qo;F<9OJ`{45KWf#NqY9#r&=FrtYUczBM}b&|crXv?aln z71Z_9#u0^o4$s=w^zH=LZ*_vsBmStJj~4dvTpz1FmwnRYI_d9gR?pg01#74id+@9W z8c(PG6VJSyinu^HPkV-~@Zs4%XxUNVbNcydfyO7(!9%%J_0-3P&e#4Z)=uLW`CKws zTD8H)$IJ{xQ1sf$qWf^uH~4 zy`Or)HPG2;P~&Z#-;4&8&2(nnUy#&p>8e$Ibbpc)x9`ADs-Q|)*#ke|Ml!@!KiV$y^a3T_wqjOHK5qn+7 zMdw+TIphpdZ<)Za3!^l|`)v;&dug*CcH)lD<`qeYyrz7bke=utw1| zQsEr`y+@~4M{xv++J0jC0nNA-rwPAp5-*4wG->vPe4EH$7Hms-(2G@8URrA(Ehr3V z(K~X!u6A#sIO|ZALu|TX@XVA%=4EsDr)&Fd9`yHwx4WheJMOr3_>5i^%`d0)CcdqC z=z6pG7%RR1OAkX~P|Qzym-Ah`m#%*ydiY`StH_TZ)viCU@#{Xm0DmZEjxy;G@c$*& z0cW+c1Xd5pgpOXmNIPVNMMgUSih!nXN+tk4BuYX#63C+gm>>qBBVmjf(F4tZIVGbR zuo0pS{7WEi`oO4?vkkVG-zL0L|zKAM&P(qhG}@1O?@AP>vzLaPMRps9fF-!ATrS%IPbQq;H2G9*iV$hJ4Oa?{; zO*E8GfHDdsLRgSkW&q8gL2q=hga+A78XYW!90tyd5RXDU2?i7$k|i{-5b2~sw5iBK z#EU)$)ZYbCdjPvAn%|@gVgpvxF&6NNAPip1=X^r>gx8*m;Rjhz(;n!X z?9&f>6xA-RlujoV)I=$>p%5zN@)bg*jY}a^KAyJ~g+q=PHUMXSAWAIbAA@)(*7c4r zSQKqx-YK?1$YuwIbK!%F@dA!CEL0>7o7gwP)*l*?EwHbkw9 z46RySWi0dsK$m(fNON?P0mJVmgSD!Qj6{N2+Es?upsq3sob_~-q1B*^j7&p>82u@H zBU8|x_PLD2hLeXbG71gW!Y(orTJ^igXf#&0dNc~FTOU+*ci-q}E$^Zajxf8$o`QCh zF7>EnNN{(R(Ywc<$)I=B$E3lx5nbBC^54xj78CZ1F7@b)?)EXL-Ti<~xto0~wz4f! zF^3<@6XPF^ISGSA=(7eK0ebS6@L? delta 1719 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 literal 820 zcmeAS@N?(olHy`uVBq!ia0y~yVB!U`y*b!`;io3hJrG>?b43kr5&iEYWZdBWm z$*`}ouI}8mYhhM%{l0zw{`t$7DJn0&|Gs(eo*2)E?oPG`vnNlUyk^asC3o|l|M+3y z?d|P3>0rWyxpU{XU1#(a;yqwKefsp5C03CU5hsovbDNZ6A(K{GYTDi1&AXm?mWot^ z%1NMgfB)9z<>z0{+G-@jxBnavY}&p1_5-T~sSY*;&rd&o%&6Nx|6<0Jn>TOXxpU{q z=g-ETmtK}!dRrzP$6<2zzVLzRK=anDU;q5+)1@yp4~P_9W~kY@f4~3kyLnY?21{L- zKRkW+&d-Fw9_SwNiwu9HFEXfj+S%EC`tU(PszJV!P2r^ded9A{&!$#Z?gSbzMTpm7 z(vxS;)b8e8H@4(&UpWvuDqK`L$~2zJ33y7=<4AgGArIe-9Lr>_1*vTYL7_ zt*FbB8#L9V9*AdejgsVH1BzSP+U8dA89d#?!O1WM7@TyEc%&5eB)?IAqGnOc)EZ#2 OXYh3Ob6Mw<&;$T-b2)PW diff --git a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_cm_31.svg b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_cm_31.svg index 9ea6c9ba17e7..455a228221b1 100644 --- a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_cm_31.svg +++ b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_cm_31.svg @@ -5,7 +5,7 @@ @@ -18,21 +18,8 @@ z " style="fill:#ffffff;"/> - + - + + + + + + + - - - + + + + + + + + + + + + + + + diff --git a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_dejavusans_31.pdf b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_dejavusans_31.pdf new file mode 100644 index 0000000000000000000000000000000000000000..f5846390d7cb2e0cfc33477d6ba62416f32f158f GIT binary patch literal 8309 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 A`~Uy| literal 0 HcmV?d00001 diff --git a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_dejavusans_31.png b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_dejavusans_31.png new file mode 100644 index 0000000000000000000000000000000000000000..11a901df8f39c69a5c1091e6ed0d8ac5f105fe63 GIT binary patch literal 2183 zcmcgt|3B0F9{;2-NaGw%+*H&x(?}g{PEpA6Z51^aotZBYWAvSA)(k19qvA$(ec4ix z#5KjxOvdSke2+1T)~%RrzOTh>%Xzzh!Tsrc9*@tr*W>-=^?W^_&-d&1lRloXjiwtR z2!dg~+1+T`c{-;Hyw=5Guzot=qUl831pm4hz3_1mWDvG`uPJkRLV_S2 zB-YK6PQ7!RCkVG8_4k@)Sm}2#v!v4#l2s7DD~u5$-n~TPyw3cE0AiHJ#k?L zrtk*=rf#u3A5LhbJXdPyJesn4z1EszM~_x}W|`TOwxjf(ZYHUV@7?>U(CKPI`>0G< z)jhjN06DhPcKq<{)2DD=yu|k+o5K;nNAgiok1p4(kkgAIBO->E=08ujq-jqqs-|E4 zW)Kz|(nKTC`J#}Q)JP(6ab^s~7hOm_+{_N<5fc*=>#i=&lqvK%=<6FEq*m9|tQH53 z4-bDto*5n4heB00Hjb8h7Y=b;*|^30^Wx5$M6Ro153^6@@Cnb>M3bDNxUXowpZwbhwM5m2=QO)+cxbd*Zv#5`qcjCZAl+t}Dx)?}3B zCl&|ZZ6#-9WE{`VWiZmGljlCV=0vn*neRu{oO@rF-}d==v1e9#CF{VYN3d-Nezq20 zmb~wp`s0Qk;*FUzEt*Iqkw^>%!??P%w6xXG(C}=_we>CBhQ6OqH$%MSm8Se8gB_4* zI?pP_;{{#QKvhT|CrrOvFHScwXX_dv(21;~Sa(z5)3UOE!pV|;%d;z8UB_Wt_PGIs zg4DIzoP_DXaj`h|Lt|oCEa1v;)W(!9tcSA>CHkgm8w6yTIl-|bBO}&GJ97C`kCRm2metA{XS#a045gXbygz(sVfCyhp{`MOcfw?IR%c=?2Pl4iN~&5rRC-2p)>yo2?3_!cqn|$>HN?fs}uTq$g~Zx{xV!KC#u(MTEq_>cyi(t27{?l ztmn9`x~8L}<6d6g-)Pz^p;ai#+-XY$LfVmQ)4~PTBK4PGO`WKmje2_H^OSozImJ?` z^x1D-*#6Fc?e)ju9{z4*^-H-{7>i0Mc^x}uh6wPu;Gbjl&g5NcRL4IVYjdkG{AmlrJoNQBZ5+ zCH+L%>dcZg(P8Bk75;z&fj~fYnwIdzl7E literal 0 HcmV?d00001 diff --git a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_dejavusans_31.svg b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_dejavusans_31.svg new file mode 100644 index 000000000000..9f2e2e7f77d1 --- /dev/null +++ b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_dejavusans_31.svg @@ -0,0 +1,151 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_dejavuserif_31.pdf b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_dejavuserif_31.pdf new file mode 100644 index 0000000000000000000000000000000000000000..1e40f397af694cdfc5e7410c793776be292be6ee GIT binary patch literal 8512 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 DcYrIY literal 0 HcmV?d00001 diff --git a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_dejavuserif_31.png b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_dejavuserif_31.png new file mode 100644 index 0000000000000000000000000000000000000000..6e0fb8c17492766449a01c0f5835ee659e4de77d GIT binary patch literal 2277 zcmd5-do+|=8-GjWYn!^l3?q-NwI=glL{{H>e_pY_y{k-el``OR$_x$$rBstpK$jPY5 zKoBH{K5Kmrf_BOQ8zU_R-lBVTJz&}uZi#l01`k>KY9jdlSIAj>I0PwN{yBD(nKS$# zNIC&+ZQ*h~cWxAa*5$Hx#}dx~k9SrJ%5<`|b{fc=Ln7mCJ(W-{)`HAS5d+vdMLo8q z;>EgS)+M_xbM7ijvXRnhm7aCiozoqY>`wU^vTi8K(?86l!$qq(JOybAOM|r#3!~+C z6dNb&qd*WrQ_Bsz!K^7!vIBxH78(FsmjQ)poz4v13kJk5r?J_`Eu2g3`WwTAq-8;8qHwRW^0Y|EihJrgldtMkN937hWM%zu zTD>QyE?%DK?mITV&k&Abugq|9PELxeWGM5OTMv|#mFe!y(R3eHo~l=JXJ@CrO{#|e z*2Xs@EEcQCIu-Ms^qcNSCY`rnRB^uY1f5Qw{MjJp2iOI>MCME=X2E6E$ zX|&kU-QE4S8BQgk^^%cET)VsjFvDsY;o4(A;7JLAI}dXmD^pdUC42IL@?{N0d^~3M{Xv_;-#d;C$5z zOG!zor}vS`XVV1k45Gike^StyK4;d!3iLK?&u(fuoeo@uxyQuByca^ox_N$(WmWK~ z@rN7)hD~_|1vd}?ZZ5xrl0lzpkz>DsMqyw$TlS%{RN01-m5EU0;u=74ub-+3a&A3`Vz5)HxTq`^#kS zBlVNP{YA*Qtv~l2lj0=EYqHZKaG$$vHB za5(SwWL3S?pvK-|HKrSIR>h-43wiNT?A& z<6mKoE;w9?Q!(lY3}#j!L@8TmNBM*&;0+KP}+PoVQiR_#RLsN6@8LRW76>V+SdiWY^ zhW#U%sNe#4kpXlddTp^#$3FMt72??2yJ06a6j|#CpnW_Rn^II%G+2U}ao7Sv#y&E} zNlHq(z6hkt$jTzFv?cO-l{7W=&_Ham(>a0OnKxMk`*UywOVH^$5sA5FWrtP0;#*q$26ST97A?|s zux#29=XfpdX0p}ESopzgBjT5-=>bNitreNv#AdTelRc_{izk4RLx&EzR$oC@gtxV~ zqsaCJ@B)D9x_BxrS--VeV(~}zo_+fmrKLIuL&F!*AB3VORaK6~HWUuXEsj7?7oYZM zA*US#1>)G_s6ZNx=G&I2sAduwSiubo3ll6|cX4$s@6I}=i$LI-Z+uH#vpeI11POM; zUw>Omt;*u~^)sJ^yjJaDf5VOPNwS`2DwbNDMX*c@HM5 zmtJXO4KNtYKwqI%#O7M4ruj{`#>Pg){M}PMKWWi2BbOCgC7?D<=0hfacW=5#70-UE zRoPfyU$?cl=depK2%lb!lG4(zi(~IBv`OS;L6Qp0Z9n^WL;rw)h=niB1to8$N&a)g z^+$Deovo~Hmtr5PEYWZECbOYC1vND%#;>WqrKdl5P(X+Kd>yV2h-(h|{KBuVzybuW zFbno!%<>)h?I{C*AVO|2lj#by)z#Z8AC>oF5a%fubSH0iI9`7rcjh< z5_{<2!Lq_a3mb|S&eAe|p4X~9ofa3H^KP?&Q3UN8>gy}W&fXt1T!$t!1kW8mH8C+^ zi^UFs%KdqzgTZ-oq(*Kl;kw*Vhq+LM3$3jfi>j+GbC|_U70h+Z40NZ}X$&<>l#lAOL+@zDugh0_$G{xUkUnDgT!RPhJas_tG%~(E9}+O)Lau@ zFuZ^NJ}oV+FnE-CHzLy<=jd2)ZQ;uiBcltTIv<6>I4?u_+h2hu&VZ=KUdKt~zx6tq$ehykb Nghtw1KeP0V{~I_kC&2&! literal 0 HcmV?d00001 diff --git a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_dejavuserif_31.svg b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_dejavuserif_31.svg new file mode 100644 index 000000000000..08a0c804eed2 --- /dev/null +++ b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_dejavuserif_31.svg @@ -0,0 +1,181 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stix_31.pdf b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stix_31.pdf index bb9f86148c8244255647cd6dda2f6e481c5b47d8..945fc7cb66fa13c2054bdc0f23bf1eba89d99be4 100644 GIT binary patch delta 3959 zcma)9dpwj`AJ1jFjG-`CHS#Ew#5~X3XI&}=ORT{rQZmN4jv387gvy|{izGZ-N{U({ z%DzReskAD#R8qZiiMLYPHlnvkEAR7+N}2lXJO9jie&?LuIltfep6~Z}jxM=wmF{Nf z;~p3;;KKkD00B>c><|k(dBHqb0MIZ4KEo9<=JH@zAQ1udi6M?+5e!h}y=1RYUQn1Q z1Yl&;lU&^dL18>QaV+46c7gzv$pYv!U>!hSArgsUDQZUB_ULSZ2>oJDcyN-4qoV+8 zYqZA;AaevUVSIt7lU>H3w(O_4C;>p87+`A)kUa%bakPXlkOHiUxm=zEbp=qcFMvET zoXZOl0JgSxfhb5E7>>tQ!TzxYTm_;KI23@OiSdqMLNqLZ>?lOTVZx z6Veg}j)|>D>Mq}Px^O0x)b^rpaY?Uz7TZ^8OFO&rYz_41gNNby`y3wKFrA*D^ya%g zyNGQUNL_AS`044Y$$vdxz1m_=()kB9_hb4a=Gn=Vb(4PZaCZHjwJ_Nz%#o{;KmWvj z*87C)Xk&aql!sZqwIt#D%`rrcZPlUs3B8rq&kYnP%}Q@PZW!NOd{jv@>zHe*%1e5q zu2r@qWnt8_#M<`5eyw>;mCs3k5RK$xNWl3MK!&)3}UWu=V5=H9pe8e!EL%^B_3 zSoz*-2F>Uff^T42F|zIY8jnMc##fx}NW^MmE#Sz4hTuIJIIZK(_u5XL*pg=aw)>jD z)v)^Z?WYQmwaW9DRFL&C{}4m*0H`!3nsvqOmvzpHQ<7mooN{6`8vCmguyg)&To#D4 z7RiX9I&dy|HmtfP@rli&mtlX8my|V-Y6@<7F0lv-HXIwgYdFtF`pS2l-%O3aet(?) zbl~ZW?k6Duujapb6YIX$_-9$U`|e&Fm4QRJbpF1-%Z)3RYQTMmbaw5)KijZ-jX(R0 zb?w!RMV1TVPOp!PTKCHB|njJ%C4-;QHmvoUT-;Q z*wx26HmWtp*L!#1P;0n0XOYiezwc~y&VD*T!};hk@(%aKrxlmhUKab|??&7Y=u8nh z?TC1O-g05Tt%l)nb=8gB`r0c!YmQO-Xs7I*REE2yf0thvSNhfQx7iqGq=;B$u7+21 zAS}Q9*qx>#;e>ezo?xJbC)qlBE8Wrj6On8He=w)K0gS;LPBB8XwQq9{BYyNt_};5GY^C!e}$Bfu@(f< z>Bt;);{_bSgu#M_?(nlsV0KAZ6fBk?vAEo_Vf7>xBzqP?Mh*t#w+f}aSO9g1k>BKg zDHt10xjz&J^`Gw#-D72p3N*9h9g$SOnJ{Ag?0I3 zlppyU)sxR%+nG{%)U?5TXXqZ?Zgn*i=GElFF$1&W$i+=33K%gec9uoZ%iGE=?m-K0 zo3uk`$=6fgw@}LLFZa*mWXhQ{L2AZs<6Fh`avx%iMzgm_m=glxxIPbNnCSh zF71hNG6qhO}n>bW26K zoJ)G4P0K=AH#xr1{TG_4aQ@QxwOoN$MPW%wO2JxD<>M}s+CQ?+E*p_@;kY$v(*~n$ z*JrYKTITMDOipC-GXLz1*>w>7@lCIDh3si&L;*`bOOSF(sY+#ES4s-!*IN~V#WOay zkNK;YG^&)8Sk5|SH`Z`I#cW$$9`*Ol_YT>|7Ov8iy`!kL=y*1hEmzYJ^ajs&& z?7*tS^)ZV_%WvebV}rshn^%$GaLsqrAz3K-hVK2;OUH9h&O3WEvd()ZHK4dRCH{b& z&vH%e<4>%@4gD9DyO-!(P1(ccF-+f-=QftMag1tqbyOZ|)aKzM3uUs3!Y$*|Gc?)5n31EcqkJWc+o>3w98TDps>iH%Et z+OD?PD4osIU0ye}4Ap0k5Uk!rT-b4X9TPOsT`^bd-$h#^n|Tg;D-m-||2&!dK`9=DF^T*q(i2@h(H6CU@kD zpsXh%Zzoy%NHNjS*{aa#y6F<41?lX6N*iBPT{chOe|0`V_}`pn7|@Gei##5E-6@%S zaJ=zI4lO{xDwOgkQ>P->FLJ=19v`fov!IEa?teACq{Dd)Q<9WX@bkD@<+%&~ht21I zC8WTSF4Co(E2Dfx`RU)z!>2S*DV1E1d+RLs7M&HRcjCxc8zS*)R-zfsjBmk zC8|bqCS`{rFCJ0ZF<6BmFAA$bg@R!CLsKFb0Ia@|3VBkj)}#Ss2>_wf$Z^0r{68xc zg!`aSb||jVT6t0h07zak17x|FpbGe*3jVf+A+Borh#pSg8z4KwJYg7rg(yTQK;cH7 zqFz+W|D|3aT84eDULekx`OoV0nK;R}jA7jm$-r^ST5wG&Uh<57#6K$2AFBB{K+e0U z$W7*$B7c*7%&iylGVBM40KB{bGUzNciYYb*7Ryu{4c+Qg z8$;0_gN=sy@VFwOp3yCRJ69AIu2yA6xKj% zGPzCmdF*r=O(AwVg^KMJ{Y~bG#$qbi7&NxR2B}oKLhMuq3uT{A{(R(38mQ=yMqw#L zf<819BB3$S>pbaD-eNG>NDI*bJzcW1C|C?oFjS#X^c0KH!cN{sF(HL{5?GE12Ajdg Lo0vGbJL3Nbd>No; delta 1719 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 diff --git a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stix_31.svg b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stix_31.svg index 490cc57fb0bb..b0828cb09b48 100644 --- a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stix_31.svg +++ b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stix_31.svg @@ -5,7 +5,7 @@ @@ -18,19 +18,8 @@ z " style="fill:#ffffff;"/> - + - + + + + + + + - - - + + + + + + + + + + + + + + + diff --git a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stixsans_31.pdf b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stixsans_31.pdf index 77f734b5d9fee720e52a9c6be5b1d3ab6ac408d5..c03e8a6b1904b359ee1cf20b3c63790fb18d20ad 100644 GIT binary patch delta 3272 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 literal 729 zcmeAS@N?(olHy`uVBq!ia0y~yVB!U`y*b!`fMLy(ujp_3*`{;b$Kt-rtjo^iuD7v>L(U%!5R z=gyrk^B7CM?f%Y?P!Sg&UtC%`b?erxbLP!^_VcIZ^XJd^rZdj%WP2e0{rh)I3yTvE zA13PQ>l@EMzj^Q8xl5NWy?43coLE%$+V30*7TdOMGn(lGLbK0q+OucQ#f&LOj~)f7 z09tna@#Exg-@h9Jr8aH4RLy5#Am_y7Icf6b$#dq;O*N5v`s0U%xVZRUbw*}osfL=` z+SKG^<^247$^PR&bo1uTm$uvz64!+tCO!H5*?9Hp)ieE;TUuGYvSpW0Q0E1TzI>_q z{{8!#ckjNnWtGsl$e`l+?%lghJ9p0f`t|F*;D$yakfLwj%&M!a_og#2t4TF%x%TP9 z2L-8y{7yCneSQ6z=btZP{4wpmFfjBd(6ICqI`cyQ1Jfphr>mdKI;Vst E0E49jrT_o{ diff --git a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stixsans_31.svg b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stixsans_31.svg index d0adde6d0825..635a911ad6f5 100644 --- a/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stixsans_31.svg +++ b/lib/matplotlib/tests/baseline_images/test_mathtext/mathtext_stixsans_31.svg @@ -5,7 +5,7 @@ @@ -18,19 +18,8 @@ z " style="fill:#ffffff;"/> - + - + + + + + + + - - - + + + + + + + + + + + + + + + diff --git a/lib/matplotlib/tests/test_mathtext.py b/lib/matplotlib/tests/test_mathtext.py index 973c5d2c833d..e2eec5e5303e 100644 --- a/lib/matplotlib/tests/test_mathtext.py +++ b/lib/matplotlib/tests/test_mathtext.py @@ -43,7 +43,7 @@ r"$\gamma = \frac{x=\frac{6}{8}}{y} \delta$", r'$\limsup_{x\to\infty}$', r'$\oint^\infty_0$', - r"$f'$", + r"$f'\quad f'''(x)\quad ''/\mathrm{yr}$", r'$\frac{x_2888}{y}$', r"$\sqrt[3]{\frac{X_2}{Y}}=5$", r"$\sqrt[5]{\prod^\frac{x}{2\pi^2}_\infty}$", From a11fb24a334d9f9fe6dc833d169e704fff8c2eb9 Mon Sep 17 00:00:00 2001 From: Thomas A Caswell Date: Mon, 25 Jan 2016 21:46:34 -0500 Subject: [PATCH 4/6] DOC: add function name to deprecation warning --- lib/matplotlib/artist.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/lib/matplotlib/artist.py b/lib/matplotlib/artist.py index 83a238a3c239..1058c8bdaaba 100644 --- a/lib/matplotlib/artist.py +++ b/lib/matplotlib/artist.py @@ -207,7 +207,8 @@ def set_axes(self, axes): ACCEPTS: an :class:`~matplotlib.axes.Axes` instance """ - warnings.warn(_get_axes_msg, mplDeprecation, stacklevel=1) + warnings.warn(_get_axes_msg.format('set_axes'), mplDeprecation, + stacklevel=1) self.axes = axes def get_axes(self): @@ -218,7 +219,8 @@ def get_axes(self): This has been deprecated in mpl 1.5, please use the axes property. Will be removed in 1.7 or 2.0. """ - warnings.warn(_get_axes_msg, mplDeprecation, stacklevel=1) + warnings.warn(_get_axes_msg.format('get_axes'), mplDeprecation, + stacklevel=1) return self.axes @property @@ -1480,5 +1482,5 @@ def kwdoc(a): docstring.interpd.update(Artist=kwdoc(Artist)) -_get_axes_msg = """This has been deprecated in mpl 1.5, please use the +_get_axes_msg = """{} has been deprecated in mpl 1.5, please use the axes property. A removal date has not been set.""" From 0ea4ec97386ede830e88ada69dec31cfd8e0e18d Mon Sep 17 00:00:00 2001 From: Benjamin Root Date: Mon, 25 Jan 2016 15:11:01 -0500 Subject: [PATCH 5/6] Merge pull request #5910 from mdboom/image-read-from-url Fix reading/writing from urllib.request objects This backport needed to exclude nbagg optimizations. --- lib/matplotlib/tests/test_image.py | 9 ++++++++ src/_png.cpp | 33 +++++++++++++++++++++--------- 2 files changed, 32 insertions(+), 10 deletions(-) diff --git a/lib/matplotlib/tests/test_image.py b/lib/matplotlib/tests/test_image.py index 08654ab6c810..0bcb0f4157e1 100644 --- a/lib/matplotlib/tests/test_image.py +++ b/lib/matplotlib/tests/test_image.py @@ -6,6 +6,8 @@ import io import os +from nose.plugins.attrib import attr + import numpy as np from matplotlib.testing.decorators import (image_comparison, @@ -499,6 +501,13 @@ def test_minimized_rasterized(): assert False +@attr('network') +def test_load_from_url(): + req = six.moves.urllib.request.urlopen( + "http://matplotlib.org/_static/logo_sidebar_horiz.png") + Z = plt.imread(req) + + if __name__=='__main__': import nose nose.runmodule(argv=['-s','--with-doctest'], exit=False) diff --git a/src/_png.cpp b/src/_png.cpp index 3121edbb712d..05ac9b28960c 100644 --- a/src/_png.cpp +++ b/src/_png.cpp @@ -131,7 +131,15 @@ static PyObject *Py_write_png(PyObject *self, PyObject *args, PyObject *kwds) py_file = filein; } - if ((fp = mpl_PyFile_Dup(py_file, (char *)"wb", &offset))) { + #if PY3K + if (close_file) { + #else + if (close_file || PyFile_Check(py_file)) { + #endif + fp = mpl_PyFile_Dup(py_file, (char *)"wb", &offset); + } + + if (fp) { close_dup_file = true; } else { PyErr_Clear(); @@ -285,10 +293,23 @@ static PyObject *_read_png(PyObject *filein, bool float_result) py_file = filein; } - if ((fp = mpl_PyFile_Dup(py_file, (char *)"rb", &offset))) { + #if PY3K + if (close_file) { + #else + if (close_file || PyFile_Check(py_file)) { + #endif + fp = mpl_PyFile_Dup(py_file, (char *)"rb", &offset); + } + + if (fp) { close_dup_file = true; + if (fread(header, 1, 8, fp) != 8) { + PyErr_SetString(PyExc_IOError, "error reading PNG header"); + goto exit; + } } else { PyErr_Clear(); + PyObject *read_method = PyObject_GetAttrString(py_file, "read"); if (!(read_method && PyCallable_Check(read_method))) { Py_XDECREF(read_method); @@ -298,14 +319,6 @@ static PyObject *_read_png(PyObject *filein, bool float_result) goto exit; } Py_XDECREF(read_method); - } - - if (fp) { - if (fread(header, 1, 8, fp) != 8) { - PyErr_SetString(PyExc_IOError, "error reading PNG header"); - goto exit; - } - } else { _read_png_data(py_file, header, 8); } From 93725330d66a2d7ede290f1739744b32452b8b86 Mon Sep 17 00:00:00 2001 From: Eric Firing Date: Fri, 4 Dec 2015 19:32:54 -1000 Subject: [PATCH 6/6] Merge pull request #5620 from tacaswell/fix_quiverkey FIX: quiver key pivot location --- lib/matplotlib/quiver.py | 6 +++++- .../test_quiver/quiver_key_pivot.png | Bin 0 -> 59769 bytes lib/matplotlib/tests/test_quiver.py | 16 ++++++++++++++++ 3 files changed, 21 insertions(+), 1 deletion(-) create mode 100644 lib/matplotlib/tests/baseline_images/test_quiver/quiver_key_pivot.png diff --git a/lib/matplotlib/quiver.py b/lib/matplotlib/quiver.py index f2c7aab2d187..aef58c979c6e 100644 --- a/lib/matplotlib/quiver.py +++ b/lib/matplotlib/quiver.py @@ -228,7 +228,7 @@ class QuiverKey(martist.Artist): """ Labelled arrow for use as a quiver plot scale key.""" halign = {'N': 'center', 'S': 'center', 'E': 'left', 'W': 'right'} valign = {'N': 'bottom', 'S': 'top', 'E': 'center', 'W': 'center'} - pivot = {'N': 'mid', 'S': 'mid', 'E': 'tip', 'W': 'tail'} + pivot = {'N': 'middle', 'S': 'middle', 'E': 'tip', 'W': 'tail'} def __init__(self, Q, X, Y, U, label, **kw): martist.Artist.__init__(self) @@ -708,6 +708,10 @@ def _h_arrows(self, length): X = X - X[:, 3, np.newaxis] # numpy bug? using -= does not # work here unless we multiply # by a float first, as with 'mid'. + elif self.pivot != 'tail': + raise ValueError(("Quiver.pivot must have value in {{'middle', " + "'tip', 'tail'}} not {}").format(self.pivot)) + tooshort = length < self.minlength if tooshort.any(): # Use a heptagonal dot: diff --git a/lib/matplotlib/tests/baseline_images/test_quiver/quiver_key_pivot.png b/lib/matplotlib/tests/baseline_images/test_quiver/quiver_key_pivot.png new file mode 100644 index 0000000000000000000000000000000000000000..4763bd26d841f352488ddf3a76b98522e7bc17f8 GIT binary patch literal 59769 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 literal 0 HcmV?d00001 diff --git a/lib/matplotlib/tests/test_quiver.py b/lib/matplotlib/tests/test_quiver.py index e95edd47f9ba..21d96aa7d1c0 100644 --- a/lib/matplotlib/tests/test_quiver.py +++ b/lib/matplotlib/tests/test_quiver.py @@ -92,6 +92,22 @@ def test_quiver_copy(): assert q0.V[0] == 2.0 +@image_comparison(baseline_images=['quiver_key_pivot'], + extensions=['png'], remove_text=True) +def test_quiver_key_pivot(): + fig, ax = plt.subplots() + + u, v = np.mgrid[0:2*np.pi:10j, 0:2*np.pi:10j] + + q = ax.quiver(np.sin(u), np.cos(v)) + ax.set_xlim(-2, 11) + ax.set_ylim(-2, 11) + ax.quiverkey(q, 0.5, 1, 1, 'N', labelpos='N') + ax.quiverkey(q, 1, 0.5, 1, 'E', labelpos='E') + ax.quiverkey(q, 0.5, 0, 1, 'S', labelpos='S') + ax.quiverkey(q, 0, 0.5, 1, 'W', labelpos='W') + + if __name__ == '__main__': import nose nose.runmodule()