From 54faa5d78f84ef1d8763ad114db8ad7ab598e6b7 Mon Sep 17 00:00:00 2001 From: SwarnaD Date: Thu, 15 Mar 2018 12:24:21 -0500 Subject: [PATCH 1/6] added annotations to legend --- lib/matplotlib/legend.py | 8 ++-- lib/matplotlib/legend_handler.py | 66 +++++++++++++++++++++++++++++++- 2 files changed, 70 insertions(+), 4 deletions(-) diff --git a/lib/matplotlib/legend.py b/lib/matplotlib/legend.py index d96327a9de62..33c1912693d9 100644 --- a/lib/matplotlib/legend.py +++ b/lib/matplotlib/legend.py @@ -39,6 +39,7 @@ import matplotlib.colors as colors from matplotlib.font_manager import FontProperties from matplotlib.lines import Line2D +from matplotlib.text import Annotation from matplotlib.patches import Patch, Rectangle, Shadow, FancyBboxPatch from matplotlib.collections import (LineCollection, RegularPolyCollection, CircleCollection, PathCollection, @@ -815,7 +816,8 @@ def _approx_text_height(self, renderer=None): update_func=legend_handler.update_from_first_child), tuple: legend_handler.HandlerTuple(), PathCollection: legend_handler.HandlerPathCollection(), - PolyCollection: legend_handler.HandlerPolyCollection() + PolyCollection: legend_handler.HandlerPolyCollection(), + Annotation: legend_handler.HandlerAnnotation() } # (get|set|update)_default_handler_maps are public interfaces to @@ -1307,12 +1309,12 @@ def _get_legend_handles(axs, legend_handler_map=None): """ handles_original = [] for ax in axs: - handles_original += (ax.lines + ax.patches + + handles_original += (ax.lines + ax.patches + ax.texts + ax.collections + ax.containers) # support parasite axes: if hasattr(ax, 'parasites'): for axx in ax.parasites: - handles_original += (axx.lines + axx.patches + + handles_original += (axx.lines + axx.patches + ax.texts + axx.collections + axx.containers) handler_map = Legend.get_default_handler_map() diff --git a/lib/matplotlib/legend_handler.py b/lib/matplotlib/legend_handler.py index 0968a5c4b99b..0c7fe5dc4685 100644 --- a/lib/matplotlib/legend_handler.py +++ b/lib/matplotlib/legend_handler.py @@ -33,7 +33,8 @@ def legend_artist(self, legend, orig_handle, fontsize, handlebox): import numpy as np from matplotlib.lines import Line2D -from matplotlib.patches import Rectangle +from matplotlib.text import Text, Annotation +from matplotlib.patches import Rectangle, FancyArrowPatch import matplotlib.collections as mcoll import matplotlib.colors as mcolors @@ -728,3 +729,66 @@ def create_artists(self, legend, orig_handle, self.update_prop(p, orig_handle, legend) p.set_transform(trans) return [p] + + +class HandlerText(HandlerBase): + """ + Handler for ".Text" which are used by ".Annotations". + """ + def create_artists(self, legend, orig_handle, xdescent, ydescent, width, + height, fontsize, trans): + p = Text(x=-xdescent, y=-ydescent, + text=orig_handle.get_text()) + self.update_prop(p, orig_handle, legend) + p.set_transform(trans) + p.set_fontsize(0.75*fontsize) + c = Rectangle(xy=(-xdescent, -ydescent), width=width, height=height, + facecolor="none", edgecolor="none") + c.set_transform(trans) + p.set_clip_path(c) + return[p] + + +class HandlerFancyArrowPatch(HandlerBase): + """ + Handler for ".FancyArrow" which are used by ".Annotations". + """ + def update_prop(self, legend_handle, orig_handle, legend): + self._update_prop(legend_handle, orig_handle) + legend_handle.set_arrowstyle(orig_handle.get_arrowstyle()) + legend_handle.set_linestyle(orig_handle.get_linestyle()) + legend_handle.set_mutation_aspect(orig_handle.get_mutation_aspect()) + + def create_artists(self, legend, orig_handle, xdescent, ydescent, width, + height, fontsize, trans): + + p = FancyArrowPatch(posA=(-xdescent - (width/10), -ydescent + + height/2), + posB=(-xdescent + width + (width/10), -ydescent + + height/2), + mutation_scale=height*1.5) + self.update_prop(p, orig_handle, legend) + p.set_transform(trans) + return [p] + + +class HandlerAnnotation(HandlerBase): + """ + Handler for ".Annotation" instances. + """ + def create_artists(self, legend, orig_handle, xdescent, ydescent, width, + height, fontsize, trans): + if (orig_handle.arrow_patch is not None): + arrow_handler = HandlerFancyArrowPatch() + p = arrow_handler.create_artists(legend, orig_handle.arrow_patch, + xdescent, ydescent, width, height, + fontsize, trans) + elif (orig_handle.get_text() != ""): + text_handler = HandlerText() + p = text_handler.create_artists(legend, orig_handle, xdescent, + ydescent, width, height, fontsize, + trans) + else: + p = Rectangle(xy=(-xdescent, -ydescent), width=width, + height=height, facecolor="none", edgecolor="none") + return p From 72b613f5e7fe2e31f87178ebf8f7e2e58d1abc2c Mon Sep 17 00:00:00 2001 From: roonjoot Date: Thu, 15 Mar 2018 10:54:55 -0700 Subject: [PATCH 2/6] Testing for legend annotation --- .../test_legend/all_arrowstyles.png | Bin 0 -> 27779 bytes .../test_legend/all_linestyles.png | Bin 0 -> 33164 bytes .../test_legend/annotation_colours.png | Bin 0 -> 18355 bytes .../test_legend/annotation_text.png | Bin 0 -> 21987 bytes .../test_legend/simple_annotation.png | Bin 0 -> 37008 bytes lib/matplotlib/tests/test_legend.py | 190 ++++++++++++++++++ 6 files changed, 190 insertions(+) create mode 100644 lib/matplotlib/tests/baseline_images/test_legend/all_arrowstyles.png create mode 100644 lib/matplotlib/tests/baseline_images/test_legend/all_linestyles.png create mode 100644 lib/matplotlib/tests/baseline_images/test_legend/annotation_colours.png create mode 100644 lib/matplotlib/tests/baseline_images/test_legend/annotation_text.png create mode 100644 lib/matplotlib/tests/baseline_images/test_legend/simple_annotation.png diff --git a/lib/matplotlib/tests/baseline_images/test_legend/all_arrowstyles.png b/lib/matplotlib/tests/baseline_images/test_legend/all_arrowstyles.png new file mode 100644 index 0000000000000000000000000000000000000000..0e6d56c32815fa656256180633ff87a9b450a82d GIT binary patch literal 27779 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 literal 0 HcmV?d00001 diff --git a/lib/matplotlib/tests/baseline_images/test_legend/annotation_text.png b/lib/matplotlib/tests/baseline_images/test_legend/annotation_text.png new file mode 100644 index 0000000000000000000000000000000000000000..41d67e6ebceb6896a0eb0ca9756582e772aa9b71 GIT binary patch literal 21987 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

{iFTu#fgT75%V+G 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 literal 0 HcmV?d00001 diff --git a/lib/matplotlib/tests/test_legend.py b/lib/matplotlib/tests/test_legend.py index d5da3608b40e..f8883b6c8de7 100644 --- a/lib/matplotlib/tests/test_legend.py +++ b/lib/matplotlib/tests/test_legend.py @@ -522,3 +522,193 @@ def test_legend_title_empty(): leg = ax.legend() assert leg.get_title().get_text() == "" assert leg.get_title().get_visible() is False + + +@image_comparison(baseline_images=['simple_annotation'], + extensions=['png']) +def test_simple_annotation(): + # tests that simple annotations appear on the legend + x = np.arange(0.0, 15.0, 0.01) + y = np.sin(0.3*np.pi*x) + fig = plt.figure() + ax = fig.add_subplot(111) + ax.plot(x, y, lw=2, label="sin(x)") + ax.annotate("", + xy=(1.6, 1.03), + xytext=(8.4, 1.03), + arrowprops={'arrowstyle':'<->'}, + label="wavelength") + ax.annotate("", + xy=(8.4, 0), + xytext=(8.35, 1.0), + arrowprops={'arrowstyle':'<->', 'ls':'dashed'}, + label="amplitude") + ax.set_ylim(-1.5, 1.5) + ax.legend() + plt.show() + + +@image_comparison(baseline_images=['all_linestyles'], + extensions=['png']) +def test_all_linestyles(): + # tests that annotations with different linestyles + # appear on the legend + fig = plt.figure() + ax = fig.add_subplot(111) + ax.set_xlim(0, 1.7) + ax.annotate("", + xy=(0.1, 0.1), + xytext=(0.1, 0.9), + arrowprops={'arrowstyle':'-', 'ls':'solid'}, + label="solid") + ax.annotate("", + xy=(0.3, 0.1), + xytext=(0.3, 0.9), + arrowprops={'arrowstyle':'-', 'ls':'dashed'}, + label="dashed") + ax.annotate("", + xy=(0.5, 0.1), + xytext=(0.5, 0.9), + arrowprops={'arrowstyle':'-', 'ls':'dashdot'}, + label="dashdot") + ax.annotate("", + xy=(0.7, 0.1), + xytext=(0.7, 0.9), + arrowprops={'arrowstyle':'-', 'ls':'dotted'}, + label="dotted") + ax.annotate("", + xy=(0.9, 0.1), + xytext=(0.9, 0.9), + arrowprops={'arrowstyle':'-', 'ls':(0, (1,5))}, + label="offset, on-off-dash-seq") + ax.legend() + plt.show() + + +@image_comparison(baseline_images=['all_arrowstyles'], + extensions=['png']) +def test_all_arrowstyles(): + # tests that annotations with different arrowstyles + # appear on the legend + fig = plt.figure() + ax = fig.add_subplot(111) + ax.set_ylim(0, 2.5) + ax.annotate("", + xy=(0.1, 0.1), + xytext=(0.5, 0.1), + arrowprops={'arrowstyle':'-'}, + label="-") + ax.annotate("", + xy=(0.1, 0.3), + xytext=(0.5, 0.3), + arrowprops={'arrowstyle':'->'}, + label="->") + ax.annotate("", + xy=(0.1, 0.5), + xytext=(0.5, 0.5), + arrowprops={'arrowstyle':'-['}, + label="-[") + ax.annotate("", + xy=(0.1, 0.7), + xytext=(0.5, 0.7), + arrowprops={'arrowstyle':'|-|'}, + label="|-|") + ax.annotate("", + xy=(0.1, 0.9), + xytext=(0.5, 0.9), + arrowprops={'arrowstyle':'-|>'}, + label="-|>") + ax.annotate("", + xy=(0.1, 1.1), + xytext=(0.5, 1.1), + arrowprops={'arrowstyle':'<-'}, + label="<-") + ax.annotate("", + xy=(0.1, 1.3), + xytext=(0.5, 1.3), + arrowprops={'arrowstyle':'<->'}, + label="<->") + ax.annotate("", + xy=(0.1, 1.5), + xytext=(0.5, 1.5), + arrowprops={'arrowstyle':'<|-'}, + label="<|-") + ax.annotate("", + xy=(0.1, 1.7), + xytext=(0.5, 1.7), + arrowprops={'arrowstyle':'<|-|>'}, + label="<|-|>") + ax.annotate("", + xy=(0.1, 1.9), + xytext=(0.5, 1.9), + arrowprops={'arrowstyle':'fancy'}, + label="fancy") + ax.annotate("", + xy=(0.1, 2.1), + xytext=(0.5, 2.1), + arrowprops={'arrowstyle':'simple'}, + label="simple") + ax.annotate("", + xy=(0.1, 2.3), + xytext=(0.5, 2.3), + arrowprops={'arrowstyle':'wedge'}, + label="wedge") + ax.legend() + plt.show() + + +@image_comparison(baseline_images=['annotation_colours'], + extensions=['png']) +def test_annotation_colours(): + # tests that annotations with different colors + # appear on the legend + fig = plt.figure() + ax = fig.add_subplot(111) + ax.annotate("", + xy=(0.1, 0.1), + xytext=(0.1, 0.9), + arrowprops={'arrowstyle':'<|-|>', + 'ls':'solid', + 'color':'blue'}, + label="blue") + ax.annotate("", + xy=(0.2, 0.1), + xytext=(0.2, 0.9), + arrowprops={'arrowstyle':'-', + 'ls':'dashed', + 'color':'red'}, + label="red") + ax.annotate("", + xy=(0.3, 0.1), + xytext=(0.3, 0.9), + arrowprops={'arrowstyle':'|-|', + 'ls':'dashdot', + 'color':'yellow'}, + label="yellow") + ax.legend() + plt.show() + + +@image_comparison(baseline_images=['annotation_text'], + extensions=['png']) +def test_annotation_text(): + # tests that annotations with different text + # appear on the legend + fig = plt.figure() + ax = fig.add_subplot(111) + ax.annotate("hello", + xy=(0.1, 0.9), + xytext=(0.1, 0.1), + arrowprops={'arrowstyle':'-', + 'ls':'dashed', + 'color':'green'}, + label="hello") + ax.annotate("world", + xy=(0.3, 0.1), + xytext=(0.3, 0.9), + arrowprops={'arrowstyle':'<->', + 'ls':'dashdot', + 'color':'purple'}, + label="world") + ax.legend() + plt.show() From 28e2fccd7118efa8537ccb5b421cb821356f1f40 Mon Sep 17 00:00:00 2001 From: roonjoot Date: Thu, 15 Mar 2018 11:55:07 -0700 Subject: [PATCH 3/6] Testing for legend annotation --- .../test_legend/annotation_no_line.png | Bin 0 -> 19301 bytes lib/matplotlib/tests/test_legend.py | 26 ++++++++++++++++++ 2 files changed, 26 insertions(+) create mode 100644 lib/matplotlib/tests/baseline_images/test_legend/annotation_no_line.png diff --git a/lib/matplotlib/tests/baseline_images/test_legend/annotation_no_line.png b/lib/matplotlib/tests/baseline_images/test_legend/annotation_no_line.png new file mode 100644 index 0000000000000000000000000000000000000000..5a9f8974eb74aadcd4569d0fff2e5c7a1811c2ab GIT binary patch literal 19301 zcmeIacRZH;|2}?^N<-={DGEhHiVBgPhOP=FD>Idyy|)%^B@%_QN2u&A+DP_Zl|2iQ z`8{5j-sAWCjQjo1@2}st$K$@`yw3ByUh{Y!&*OQ#x^YrLj%g{|QVNB_L_K;)i9%Vx zMWN8EGcLlFAp6Uf_`zT!OI2pXA6Lc;*YW!j%cEy(C=_Nr@*iD{bhI%pD%l=Zw>@oP zVC$e~txqx2v$ecvVSCZ|9GAVmwT-cbIoDqPz5Kha&+p;4w6L)i-m{1Qg1-H3K0}ec z=l1OpG}y^yWNT|FCLr*yC;2U`4Fx_JU5%qqxG2;^2b3M3^fx;>Dv#y9|DothW!$ur zsz6V#w`^+jy+fLB)K}gsJ%0G*mh0OWraWC^m2gxg;_}Vw4RPu(8Hy8Yv!2Qoall*wGoQ@tp3idKEl3$De?}z{24T5MtM?s_hg$qWNQSxF= zKO?dnh7zw{y?V@IYRF?wlhb4R<;|NnZ3j|oO+MV)WGyOJ79LZNXMYCdYgMGp{Vww$PaBmy+S8C}6Rn!0li)Es z5_(Kgv38k2PTR8^uS0k=tLSXMZqn+;4s8)TvX6V}5>X z1{%{9r^biIzh~e9&)Tny*B3w6$<+uJv)jSS>01>p$GlP0Qs&H=GryLTO<8xFFHDk4 zQ1JAE#Vek_Xo;Y%uKlJzH>bEiSYelLo|b%&(5bQBYDtMLxR+l=Pw&~QSFftF9W2&+ z>5Yp@-JrytJAC-Cn9Hx{o4L99Bvg|PR)WB)@xKV`?~7YAI^zwQ#>vDaZxE7iF2o#2AP_}iS)I)VlzxL5sZnfQxg zr^Rcfh6-Mq*77rL6ssDj-x;%kKH}#74J)eSRF1#*;Y=DoUJ^($)sQup$_utkeRM`veN;WF54(m-pzu0nL>;GVVx%ZpBiAGy=dQ8cuQd}KjBGHXaFk3AjT&#_R7Yx8E= zZ2N)DvJ$r`7#;WG9^2lk*waDc4*b!Fzg_;6*WT1)`xh6-5l_56zcxyqoqye;90uJ( z1or+{^z*@ldFRbe_F0>5Qw*tkcZc1s`^%=sQJ1wDSK?X6Dzo(FC_g_xYg1jfG5^HO zPPSa!yia~%_8%-Q8YkabU@hr9`sL;M_iI+I(i`9YVx61}u1dr_eJYb|P+EZxv`lR} zOUlz*-A%tKE2*kJwC}Hb78VwEOKSZ4#|I60ZrOYH?p4;%(AYA?%*5ocw~m$R-s)`% zMvZA^V%Fb}M(T_Yw--%zKDMx(7;cYSx0*wSe68cX%ATs2Q{h05c8%9iP^<94q(R#oh_gomXnJ==)J-r6txnR_#mZNnnHBlY3kZlVEG)F{`~CYj)^_Et^rkSg#J%s7FezyA7b^ew9{cFMutrp#oZuv&YjH#4WIvvZb0s8oV!Qm!gC zd*1gMVWTfH!X{OgGfwaCZUo>f+1jQ&6wpl!3)`&i&}?_p$0t8*e9Q(jqNJe_G?>-L zU)zx6KE^lJU4GCa?{}2@RAXyaO{nA7B^$+TkD~7xQ6~bwYH;qm_(;sQ`>C3)n+jeN z@Ym|q@wV^w>gnki<$P4JM^etcT}nE0CfUF@0xLp+yaVk|vHEs|z{?n0 z{_j!?zb8+gTYY#MPQ~1OSAgf!NoHj0v^2M zIVmYZ!e$N1Bs$@zP^xLI0<+Xa+m<1LEn5zAx(;9JD@$*-f4ud?qo;Q_iklQ(UE)0a zdT}*&qucE7F16_vcZ4j}j;{xO&2xSndHd!~_hXAZs|270nen(&;a(hWqvh6RJ_vLZ zKfZ0Dj&zpBSNwK2sfeH^PTb@1E_!xp!Qx{|nP=u^$MgI8>yv|ojFmDc?nU71dOc>l zJW`A+w;~V~oKOB*VadRN09(PT>-sEzb}T6iW5Gl9k(!JN!QkH6uwSVeY-1O6?vSs*?nq2EoE-uvb9EUZ?YVtQp@X;4Xg7#Jmeqk zJ^--G{yMH2)pyf!JTH_n>%ts#aT8~)?Rk1Xyn0TF#k`8vKSc6~KF9uIUil{#0e zs8PinPPqm$vF|(Tn`Y6P7@+H3Z)bMXIB2i@X#|}Bo`L4<^iMw9+keu)#WzUAV(=z2 zHEZOvI2mxV8ciD05<1I5lkVMHDIX$HKlWtPL9gy=HQnkb`)v|MWfra2&^`G|3L}M{ z_01y2gw;-Ge)w=Sy>HW|O&x>g{s95os95PCja>oPWa>vGUN=9-C%($&HQ3$MILnmY zXp^d#XO+>4YCo=KXwf!rM3nsFhf_An%6>e&A|h%PnXON^@$e{Tm|eso9|OIax;d_E zFJGiM?g5zKb8jv_MMCxthrYH@G3QaE%&z*_i(YrwMRaP$L|<^!66iX*bcOxg`BU}0 zl32uIHk~J~y}xzqR)?k5?;+c=bPsVM)0z`xh7gKIzxhb3I_C7JM2`el=tn99i&1?e z(}myp{|NEu!K-whV~`uN9g_Oe=PEKq&t%&ts7-U}_{$zVC~Vm#Lw0&n?k|nZ_e+;8 z8>=`jKvl}jHmKJJkorbMhdB4<$X$G*5be+1zL{XY=dlcow@S9X8CfLz_wV1ab7$4n zC96{m%Qyh2?*@OwHTm(LUco^B0KFqsTYoNL*rNB7 z)zY<;{9luONyWQwTeF^uiiqfT$e#+nbNcn^i5$8zqo$0PS$2I$6N?_|&GmZqjAYu$4T=T>bG9mi@m`zXBlPXr>k2{N$95PRQpF$-WU4 zhE(TfXHv}?_wCY5J8}R1{j8p-$5lB_BTLJqLD8kAhY#xO>wnz6d~B$7?iF)F(wXEV zK<|@EO1=>`tzm#u4ZEI-!-RujaFPJxb^{G6+F7<%Q*5TSiPb^ErnZx###^>-jZ+Mj zavwivuCnxdnM-S)+vN8Lihd6sgk$IQ*5=RJWeQmE?b=lx9qJyp&#d9Y?&WTP#)fo@ z(7~LM&r5Z0Z=)U$m}kPt$*C7U{zX-4&a$&B6|T()v1u!ybDQjm#!ia)`t6%t@vih3 z?17G11%(iaGwp5{^!1IWehnNuaYEVHI2QDNE+a(Op1qO;B`Yf{f9D}e+ruSEFEQh% zeKYa@Y&kj!^Pk^8M)8aws0kfBc(4>}CK>eK;LxF~ndjc#v@UDTunJ$#%4+C!_39%; zwtb)x=Bn|kr6-Ob&+c|duMCdu9T^$XHXUe46|~46*jF2>mY|`3Y;UOhq;axpf`$QB z-g*`mT+wxGzh<4Jrmk+ZVuR=xzYF^=)_u8H|0;6*nl%^f`)W#eZr`3!n9nlD5)(T9 z{7iDmix;~EH*YSy*qoKR{;$8z)x@inO_PN-aM0IjD0e&v@F~R2&0UK228O!+ywO;D z;^@)c2W4eTu3u+NK5%7`!Iec!CD=j5V-pwy1Fvh>0uihBHKtowAOmW?edms_$i=!g z=g*)Zil=?|16pe}4ji~t|4RROGI(nzSZ4|L^J6c)N4_O>b?UWw?z2u#;S}a(h)@E+lTlx{e zvGYBrN595#MMaUKqN38p2((LQk4$TFxwnYh_wU}g!n+=sliKtCmfXgRbuXUPKR+Xw zoRLu{R656e@99&n5$q@7J=5 z{Wej@jvX8Q)o7tszmr*F*t2iVlP_ORB2Xw?yLPQ1&FnD`ue7u-;YCM$I1<1X>Ql9k z9lPnp%$c~~rc=3o=j@JqQbQosnvs!_&Pa^49hlHY{}3!fkf2_q$!eKh(Gd|w{dF%B zPlq8Q2>h1J9j!Qy7+|ae&*8F_a8P@!Xw=DV52zWp(tkqKCc;g_D-UmDb^~vv3 z=Z1$ZcWGsu1P95&x7d!9ikPD7Y7z@5TF`_yMJn|MPv+q0>Wv$< z^%}doyRBQt+j`D?GVch27J=xYT$krC)Y4%-ck?EF&xn*=Zh zV_Ca43M(nB@O-YzxGLbPIN|O4_k8^P3P2-12fxJ>i5nEUw(8|Y_joo+IG)6M=O3>F zFDY}W-K=>1&K-Xq5@E+%T$1#sn0RJKo!GtFvu;%>;^r4keQJ@|d5DL{ux{e3M&x`r zc12glhDf^f-k0MzRTd)YfA8MO4jZ}xMWl>58dw%QJ-Op8l@Ao9dNk%RogKDfd{5%O zQG>-D9_p=gMrv$ZCOK}|sLebaT_z67di>$eQ_jxLnVGD+GrKAqHh337Y1ahe?Kmg;DeT%(tvr9tjC8rMKb2c}5^ANRI{H z=dbDmdCO@?t<{M~V@*Ja$Xb~EH4qOG#q`bfRUnJ;Lg(Hv78@*KVyZ?Oi-@zGiA{*c z_Q7bwioBUkOM`?-wl@mk)7_f5zz=C@~8P(9c!MrJRY6SviRf497{1eerWzuswJh2csmM&RReq10o;__vBka>A3 zmCCW-`5Uj7-ge~Z$Rtx;)=YQ;h->ewJFdWr>&pdjWZ^&3%i8_p2>KOGnKmp44Lv)N zV<;azdVQ@02vjxS~6uXuGGoVa->((Q4lePIo(?DNzd?Ns6OdCW`BInEt z%S2ifcK-d{p1i5SO5k-Bc=@g~uMS~Ls30kGpPOp!L)=a6`~B?MvtHz{g+)awT3XMm zs+8ZpduP&F5}4Sf07Ma%Pu2p-HuY+>^m%26OeIR<&n>ec6`oO+>+ zV4Y%jp4QTOg3!%^aMpKX_Fbsd(CypHJHCI9p+4C9(CyX)0R=!oyg_LY0j56H0!rd? z=_Kv_cReY?>#^ArELl0T85S;##hBaswAW7ej3^vE`a&YCw>mx=f$&V0A|+;d-gTl` zczM;j5+i~d|tVZ zai!xz^4(m!S8@$6B?*PhS<5;}3KtcmQw6-O`TU=+alD2Iv}N12MoA(fO58sE0zdxe z4*dD>Qmv@t@Kc2+qI%=&aA}wejrf+BJy-!GF#gviZXqG%#Va;I0>n*@E74}Xbzaui z*8Lm{aDn5HXMyQDuT9aF|Mtig(v@Kkbmd4ruR6lOpU!WRX%mKGWo*ow{&gYlIFCEL z^w#;lF;>T`+;3AZ)y81=@x(rTTF^n5AQ&TCyB`ZV+AIK(27vq4QD zdC8jf>z&F6NYEY39_mGgstWN{BgN>M_+Z9C2!Lx(3^bx==H`hY(|q1nJVNmPSubv` zuKN!kg5>j*hDz&#R+IeP|H+e`(UnfG2ar68ISi7m<@T%Iki>hU&uro0*)A#B9M7zkA(D=To+TQOB$&r{xu1j(a)dnlpOtXkhSU8HCCN3P_cxd zaGJH`oIzM78rkK`mxb*6)o-<28rr-3pf5k0GnzLn&v2a`;u^H-`$Q}eV~XjIc~^LC znSW@gM~j&Qgf=!|6ChWhO^xy}(z9A&*Cau`WjE=2jtt1f-FzL1LKs_pUC! zef!c1oq_J!KB0=B07T#=kpaB$9uL&%+=;KZzymxYe@VMfJ60n%Zqfi+E1f>gH?`JP z6;K)$9=-&vI-5;oi`SPIcGUd*`SW7XJCBuI=As)`Kx>wkym#u*C_TMlPvG&vlt=lN=o>S;tZ?{pO^;q^u-Fcr_5MZdZiL$b?JXEm7%GsHzv7f~P zrcD`E1nCSHjj!f(8@=Dmjgc%kn8Db52T02cB8HjhsKMN|J5RgX549xx8feV^8h!#9 zwTgyD9H3fxrU1`)`d~G6*CvI6V)9LIb^r18ZJcg?o|s)P5A~1WexlM=avNBQxWgb4 zB;!o8bo1sN)Hu!bMDJ+SU?@4PbYI^+J#eKe%}kR}Pi!PL1A{0Ir|+v0w6j$S6FPbF z9*;426y!SrhdmXT$OMc08C3-8+K0O|i84S~FPOa-gt_WGH<#>|wRrPc@kBbSqIOH8 zkG@;jKx!sOd$_4_stG{|crhT{x|WStG`!olA4P5Ai}+B^H;sHU8=v@+G6=9x7!Muj zR4n6^UATVzdeWO)Yj^EvVjGu5XZ`*CBN4)dO>0W*mbEV9&5kd`+M=K2ClJ(fGqg5w zgPaWi=1rU0U!^Tuw(K-vQI2f*tRUTri81Fhco<@EB=UQtgMeffZkaYa2qbo2-z<>TSGN`uFPfHnmT(4S~9O_24FC%$N68-N%L z5Ia;6_xweoL0c#u-$GmR(m&+8hmR2kfccmQVHF^!8i4nPy0X|Ha;bfj9g%l_#Wq7&iV|LoQ(bSq(}%n8&P*WeqJ>F|5$?&ZPzZH_=Nr(v?^ z4jIpacqp<*|BBYbgiS1&zlTbb|MI!;MjA}c$>KKJlz4iOuK}s@4+@II9%z{FlV{N& zo#(AUX^%YGj(&QRro#R^>-g_G>6lwlp)`Xkn7t3ap4OZ`x8EHBCLmT&IgDxJn1MNT zl|6N8mD~ZmWtz|q!*yOfAA4*YB$nVx;u>6$^TgjKn9+U#F) zWE2B_S40DDY4my9IH$~g`?=Ke&pJKzM0u1#nfC(xsSq6`U+~|Q;)mCJ%=GEn_1Ep8O-Bp1>3`KF7a>GMp*4NYG}Teee-D<_uImhCvU!g|^? z4q=B2(x$Oh4v(imz6U3Vg<$@Riot*kM+X|!>g(%i5*t}8T3fxF7f}3J)~q??ieD#0 zK}hlE|LrTVWcsiWdJVxRC2$8)sn9F(;@!LVl~Utc78Y7whFqC&YOEEL0#7=!M-06Q z&C6LwXUzdzX4`Ka!M5*W3{lJ=DQD}rjj1G{#_Xl1W!VU&LdR`#v>X{#74!{+LXrZt zx{lmIMAt7DCymNsjy{`dh3efM4oMB9q%|NH$RBqglUG1x+8I(Ue}e&2B#HeKKG5ov%SZVypkJnoC^F|(00z$|o zTdt$4E7YNpR741+XmK5p2Yt=1fjnh5R;}jZYVQ#c7#N$BH~DFB51MEh$hcC3RN-S{ zwqxR7HaYunNGc;Ofxe3OjJJB|dg;aJ=DU9?D%1VF#CLZa&2)<7Z#oo*O#&2aB!P8$+7+pfsyal@ zsJ9L4R{B_kkC*pj z)Q#x{nB7&l>)U%DHTANOAFU+arI2+Zc#5<*p3fXZagi!E-n==(RX<&Ze`+U&yG;|r zjXp+~l$^ku{WV)r>_yj&Tk~>3CD*K3qiin8!*j^@LXZKABD?x0`m2>B<#1h1_w`7= z`wW>GQZZ_p{QCBmO1`@rs5`YHvrqC>a&qzEx1}Pj&jDMga|Sg28Yz>em&Jq?oh7yli%u-(|aPTc-EvcqES+qUD)4)IXn$X<{FKXb$H&VWH-)JL#HhAzt~ zT3SK+uUNn=QQ#1VrcP|CCr5n0+lrZmFksjMF5@egGBc}PxWGf((C2~gJBxPHy32VGz`cqKx8-@G zyPIY3H&uJXgG+f+mG9_>3m*zY_*@8hf_R{-+ zsQs^7xMlEluFKGnBcAx%#9B1^4vmWK!aIZX)`_`Ki_Rz8tL88KTSn=542!0cCNoOA zH_g*jggn;<0rwxva({l}I|iv_p8H%T{Df~6djX1WU$~YlGI5kw?eTsl* z&s*S9BmV%O98Qb^{4#i7>jAvaiqx?S9Kbf6pr9hh18)ShEx=oH+S<;NG+XqM$7kH$ z@>y@3BBKJ${R)=&{9(db6X#67p{DT#+dtu!? zN9jNhm}vWM3QK~WcF#EO5rGa!dxJpN3m3}MxF*!$!6@#{??`$)b*FW@Q-mg&c;4cI zrwLmJ8peHV8yn(QK=FZ;`T|DTh)@B6jD?jo8l_f8BREGX1tK6TP7#rjyu7^Bk*=~@ zn5%@5Oe1dVRtPV`9wq9Z5X4IPz`bv;RFdJ!yF{`2hQ6~&I;RlJ3djYj3@RGw=E1Ph zK(Js|nY1H2u#%KJTy4sA3=q^IAI*_5VQ=iJF_rd0CmLctGIi+Oh!-Nw z{$4Dpwnzj=G=hblT~jX?G%E3ZnIWpB&R=hA8*MO60s?iu`Y$?zK;IZW71U&`OM31M zAcU4vw0&E$c?a2r%0sgl2W|i%G331ndGO$yb5pQCpPC5@b^!*3ybf-uNRw=LzS_d1A61MHF6J z|1UwmQDP(id~$Bi@WDw4o}IqhBsI)E*%Elq!iqDW%r=U|ueT4J1te)p!#Z{c<0 zphRvJynmR3;lp7b9-cZ$dj12jdD(WBtPh4griqCJqqdExf4S>}#81KL)Z0i|V4rk$0od?XOwp)zt4p;!uaE=|5 ziv?3efC3w7*x>@~5C;!L6)nnmJ_~jCqFid-v;5$eEnA?y&j;0MRKN1iBU`j$gP`Ea zx>=^pfd(=|X!;N>bhm&kkjG#ZP=?iI9;^)~Hp@pv9Sb*GRW(BuswxK9WmG{nRBgbGIOwoun|w17do$_GsmE0{PJ=DVIxz7SCh zt)dYCB81Fh+;s()&!@1EN~YOpJ%IspLYOwiuv!kA&JP5lOD*(icys4FK;D-M(z_~Id;hjT(l#FAGPr-2PEH+d;=vT@&i?+{G1+#7 zc|N#qmRU*pH>Kq|~j`lvCZ#P2odf+w3*^S&qDOp5jWAis}(Xq8>ZOBOYi7k zG({r^$=bg?mZV?&Fzd%Vc9M9|NH3!!VQ&%%z-o<5>quH(WH!w6YG_yJ(f>@?=-LsA zAR(p_sms$-&XbEP2U24eL|s~6NK+UYQR4ViQsVbV5?J|#aU}yo(Qc9kAvc?EgAoHG z{bkfTcu*;!2`iWGP!7nR#%dFgn45j)li_RfNRMQ(yBLybNA&&9h*{N4LIZPa!Mx>N9l+A+-y>=86?`} z&&>=$F31pc`E`+rQ>ux!MCjR&?!k!%{D|N^9rdAI)Zw89GAAOEU0cSwLmE}o#yt24 zddtJTFJCE}srK^r?(g=L(tlp-V!dy z3_fEDk8QxHGpH4@h^ecqtK20D*u)0hj$}7IpI1P$xTGW}qV}<%;a${n;$fc1TpC5# zg)6JWYin-!Dqt{UsWGj2-s7C}irA461JzN+uY@9?6KnPkK^M7mfaY;|c@+~AlgM$T z1fG1!XJ6CrQh)KZNduKT`AR5lZUhl9K}MnazPr0I9xov^IApK)d77<@cQs_$#Sdn7aX>lXLy2q*Yp$jm?8D4S@g52| zTW02BZPDi!9CTm3;Pgk8UkHxnv7SmfU*!Z1VN#EW+c&QbClid}jP{5ht|O@q{hK5D zwS%I65@JTJzlr^t*gWRB@MS#$nSE;r{5Z=^|9vyO!u=d{DzK>0!1svO)w`auo@h?p zEo}5nGWc8nVNb57>%3lT6S3stA^ehJ)~E_*MT6j#F8~{UavV;FP)SLj$D6m>FIJws ze8t!t4~YM$Bw^!kHGM|WeE4?9T3m)`xulE?;MNjLAQDOltwKD14~Pa(W2e2 zO}Lj9F{f5?F^baA!wt>aK_GL~7j}KcYu?_+ebMW1Md=x3SmKD| z(;3B1v@cVKTU=a|xQ~!@uwW-?kW}N9elhX75)(a4UkG2yNDUwEJhPcrLc@uOAik+v z7=dB^tvT-?-kzX#;{W{|Z`YzL`?e6XSs3w=ZRO#41SAvT-n_X4JIl{y5OKRSBSTb> zhvyA3`<;O%lZ;BRfrduI!tozq;(?HF_ihP66O~lLS3xU11zEK~4J8r%x3sYTA)^j2^pNb|?l`xOwU=ps;`oh;Sl&=DCziLdCYv(t&TIfT z<8ru^lO8;Jq&`@NW)ZjP-3|N0CMFz-xy{$Mh)KlHMF%y2s;37Q5X)LXYAcW}b9M;D zTLP}KW2kq-rxx8bLQ*=c0wZ#o1;&4JMB>GZ7sU-Ch!0Oeh3%kVe45!WI?;3~3u8yM zZdTbLCYDv029p9Qw+Wc$aP;dy9~ybiB3ZTXL(@Jp6^9KP3F02VZgj1!a~ zY<6FA7%Glv*&O1qi)7jMSf5E^XJ_Z5I^#^9-@SX5(+zMrgb^*^gt{Zug=|{|vYD`5uQCamu*Fnk#Dw7y)3&QtVcT== z&BFAdx|iWRIG-{30MhI>L|h;O-~Rn)Xh&l(MZ7p~h90USbAcw20wtfkim;R|)cmRD zAt*Ude~)ybYvFF%Ak;L;sb~`LtT2myK^Ml6&3!ImqKe14lA1mz=%9)DJ5TWhx zpD9inB`$j_juD0sj1ynImm5);*Y=V8^$1HWT%^_YG}eunWt%6d<2bZ9$pNX!LBpr0 za%ZL)!}AMd*xJ*?tHJ3$@vOydT)UQ))62`t1g9>b22_!wC&;dk`~ElPuG)aVzRopd zPd$n&p7Z%8FwCXobfv9yXO+;6ldHqdu$!>$-?sl@6u-r}pvUqL&$DO*7VDQvm#Av$ zhigR|2MUk4i|wjBdU|yS^U5{M3=JE5sO6%YEoWvY?k2B1Bq~ySiL>mz{cPrEr_fyK zJn`T@yA`2j$lx}fx*pq_yQv$AGda`-<#vSEY1z#0uFy$nsHiDahmGvh_%vW24{0Ga zHMJK`1X%t0(z`Ib1FTcRtv{F;8&aj*CS!;}+@l3B>Nu-R#MRj%YBzpRo^SFbKVEoI zXkmnno@N0uW#l4P|L=$MgCN8$AfO1pW;seuDe&oNBma4u3Om!8Y%J#3k%cr zuNkPuv6}V$YtOD48B~Ad@V+qT(nD^~rZ?n}1`JGYIR8a*FtW|zr9SBa$Kfv1fL)qV z5Nu4KY>~6OP)6c$>J@g!QrRveMaQDv`8SEL?PN;XKo_wjf9BU?k_F%dNDPD_9F47o zLy}a3h()KghC|X>nfOScxuBLx4gwIr$YN%Ws!#rWyEYPS;LE;MGC?nJ!XUHRJVE`X z>Kcb3-d8*B1aR#DkP1%@iePadAa(T6QKUb-loNxd)!U2lH5d+2Vsd#Gx@ z#lb!_9)u$nRX1UcA&{i5*{F>AR2m|{P74j} zMb9m+Bkk-8vKEEVap4T^u+L_H-qqFRGH8*QHftqP0~kX1{G4A(cHsac<`_C{Tw-Dk zf+gE?i-r^`NgrfoFY|otu`3A z{up$YJ~S9$TYwit%1%z1#Mev?5{`D4Kg{w< z&j}pA0~3)y7CeX=PQ2`r2`=Px4NPwws6l)Phrk(|mZpl#6Gn&Zo{suet}UOlaYff- zCKZm0XK`^mnAYz-gkzXWh={vvnRK5>x~PIJ)OHjH5N8AvheXEP)c$&n4^PiP67R$@ z=uRAsHdfKr)((a&wi^lDR&nu091#AveBJJX+Z)AeYzLd_n_Px+qr$?zJ}etSxLr@} z%$ph%gmSPIM=@^WSQi$r1@jWRUl4ztg@+KV>yGY)3?TxOfFRbBpl=E8DnUToW#?1# z)4pX6CxL`lb8=en1VSs=?%7XTD9(D4*}4wbe5 zUpa>wyyW8#D9Nto;4rVKtbCjxi8HeIFQ6PFVG7ki*tg_oNAZFNk(_VEIjsCzMj#P} zCZ?u$_PoQs4n)vqqhe^p+j7IlTm#2F!1_wwynP#pbcX&YduMS@-$4UZ7)k(y5`FNO zZN;oVbt@9jD{+BtbHukEg(brQXenFw?yYD7aMBI1w_uKiQAQCVE=5V zzZ%&S6mcj5PRIQ5rE`tYb>it6UD9gWc}6M4{{d1C{_e0%*+|-fgEvc=m{cI%%+zn4 zepBmITU~A3lH)|o@~{Tpmq}YHJ*?kCERZXlo8e)$NXLv4Y;Lz=qM0o~a<>bEL zc?(9K96ex&&}CpnV>Wp*JOb?g{9ZUI99_Boo(6+=zF`_70npP3XI#V~u|vV^5De zJnSew6h+Lae0;~TU#p>`OxJKvzYlN<@b~W_XH5||pT@+*c#bj7{m^gW4>%4OQ$@|3 zSa`Ag$+3c@{MoETt;{fl(1p(}9Pw}~3~4dERND+V8XC) zV_2YMo0*w~k4>gN)(%Q=Z+@)7;FCU*ck0ZUK;oH%Me;N`I&HLFS2gW$Uda>$qH2h8 z{vjb8FJ{|x^Gd{#=i;ycIhiMflb2MbbLYaaf0E#HgymC&~c_!m%#gJYE=aSf{LnY6pm-Ap~^@6 zz-QUK?J%`IJ}L_?!jy(;taWxXQwN?9!@^bRLnb@On_!t#8 zA@!uzCv5JkGfJ@tV2=jre`J_91_!JPVg%&ZseC;KmihIrj_ny2ACHrmX^Z;E3<776 zb8+=}u>0C{eHM0HeGDoiDkLD@ zX!qVKC|G%PFGhDPhqZQ&Ym3Xi)>Se)EyaQjzJIuX#P|LMxHn5dKG-EX4cPs#(*q%u zJDT9o>!+l1=~gYD#dqxZblT?I9eLx%j^e(lBMkS_$^x810e}b0U^REbzt~{$yLI8^ z_l-_!YHE*BV}5k~`t?O~0-@MgyaEF0ZtIM$Ax&)^&CPiAs$yMHNGYf6?RI8Gv;Fut z6}0#R$UilL&(kwLuOr8iK!nM@K<4kMU8tKAEYh$IoD(|$0)UFLGARf4A|!i?U6pnc zAL{Kj@qhR*E-vmEj(h&p@@1Lxcxh<5{!jWOx`Z%fPhke)qoCBRlp#OV50Xj@ Date: Thu, 15 Mar 2018 14:07:53 -0500 Subject: [PATCH 4/6] fixed no text, no arrow case --- lib/matplotlib/legend_handler.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/matplotlib/legend_handler.py b/lib/matplotlib/legend_handler.py index 0c7fe5dc4685..773bdda7c365 100644 --- a/lib/matplotlib/legend_handler.py +++ b/lib/matplotlib/legend_handler.py @@ -789,6 +789,6 @@ def create_artists(self, legend, orig_handle, xdescent, ydescent, width, ydescent, width, height, fontsize, trans) else: - p = Rectangle(xy=(-xdescent, -ydescent), width=width, - height=height, facecolor="none", edgecolor="none") + p = [Rectangle(xy=(-xdescent, -ydescent), width=width, + height=height, facecolor="none", edgecolor="none")] return p From bbec4782a8ab625d84e578081708e308b776ec40 Mon Sep 17 00:00:00 2001 From: SwarnaD Date: Thu, 15 Mar 2018 14:20:04 -0500 Subject: [PATCH 5/6] fixed text clipping --- lib/matplotlib/legend_handler.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/matplotlib/legend_handler.py b/lib/matplotlib/legend_handler.py index 773bdda7c365..43900f9a3625 100644 --- a/lib/matplotlib/legend_handler.py +++ b/lib/matplotlib/legend_handler.py @@ -742,7 +742,7 @@ def create_artists(self, legend, orig_handle, xdescent, ydescent, width, self.update_prop(p, orig_handle, legend) p.set_transform(trans) p.set_fontsize(0.75*fontsize) - c = Rectangle(xy=(-xdescent, -ydescent), width=width, height=height, + c = Rectangle(xy=(-xdescent, -ydescent - (height/5)), width=width, height=7*height/5, facecolor="none", edgecolor="none") c.set_transform(trans) p.set_clip_path(c) From f64117468b38d7a5dd43b3e71a98a84295ff2e33 Mon Sep 17 00:00:00 2001 From: roonjoot Date: Thu, 15 Mar 2018 12:33:59 -0700 Subject: [PATCH 6/6] Fixed test cases --- .../test_legend/all_arrowstyles.png | Bin 27779 -> 27779 bytes .../test_legend/all_linestyles.png | Bin 33164 -> 33164 bytes .../test_legend/annotation_colours.png | Bin 18355 -> 18355 bytes .../test_legend/annotation_no_line_text.png | Bin 0 -> 19599 bytes .../test_legend/annotation_text.png | Bin 21987 -> 30723 bytes .../test_legend/simple_annotation.png | Bin 37008 -> 37008 bytes lib/matplotlib/tests/test_legend.py | 42 ++++++++++++------ 7 files changed, 28 insertions(+), 14 deletions(-) create mode 100644 lib/matplotlib/tests/baseline_images/test_legend/annotation_no_line_text.png diff --git a/lib/matplotlib/tests/baseline_images/test_legend/all_arrowstyles.png b/lib/matplotlib/tests/baseline_images/test_legend/all_arrowstyles.png index 0e6d56c32815fa656256180633ff87a9b450a82d..248dbd8285515555854800bebb76359b76951cc3 100644 GIT binary patch delta 58 zcmZp^$=H08aYDJSsiBEpN@|&bc6w4$YO;yBg^of-NlAf~zJ6|ENkLA2Nls>xUVc%! O{!M`epEfSJpA7(Ez7~Q2 delta 58 zcmZp^$=H08aYDJSiJ_rhN@|&bcDhlDfqANVnvOz7NlAf~zJ6|ENkLA2Nls>xUVc%! Oe#y#vJ2x)5pA7(7A{K`L diff --git a/lib/matplotlib/tests/baseline_images/test_legend/all_linestyles.png b/lib/matplotlib/tests/baseline_images/test_legend/all_linestyles.png index 68e7be3fb480403c5b545a745b7fbd3c3e6fc2d4..b071ba0df58f816a6e7ae7d9afcbe558c09938d3 100644 GIT binary patch delta 58 zcmeBaX6k8XnozE5YG|UDl3HexUVc%! O{!M`epEfSxcLxAf6ct(k delta 58 zcmdno&$zjtaYDJSiJ_rhN@|&bcDhlDfqANVnvOz7NlAf~zJ6|ENkLA2Nls>xUVc%! Oe#y#vJ2x)jcLxAXcokm& diff --git a/lib/matplotlib/tests/baseline_images/test_legend/annotation_no_line_text.png b/lib/matplotlib/tests/baseline_images/test_legend/annotation_no_line_text.png new file mode 100644 index 0000000000000000000000000000000000000000..5a0d20c27cda22a22086b6a4ba61414504560d1a GIT binary patch literal 19599 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 literal 0 HcmV?d00001 diff --git a/lib/matplotlib/tests/baseline_images/test_legend/annotation_text.png b/lib/matplotlib/tests/baseline_images/test_legend/annotation_text.png index 41d67e6ebceb6896a0eb0ca9756582e772aa9b71..487f4aa19c82c79118708b90d80fd6a4ae2129bc 100644 GIT binary patch literal 30723 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 diff --git a/lib/matplotlib/tests/test_legend.py b/lib/matplotlib/tests/test_legend.py index 2aa25842ff94..de2825dcb892 100644 --- a/lib/matplotlib/tests/test_legend.py +++ b/lib/matplotlib/tests/test_legend.py @@ -527,7 +527,8 @@ def test_legend_title_empty(): @image_comparison(baseline_images=['simple_annotation'], extensions=['png']) def test_simple_annotation(): - # tests that simple annotations appear on the legend + # tests that a simple example graph with annotations + # appear on the legend with their image and label x = np.arange(0.0, 15.0, 0.01) y = np.sin(0.3*np.pi*x) fig = plt.figure() @@ -552,7 +553,7 @@ def test_simple_annotation(): extensions=['png']) def test_all_linestyles(): # tests that annotations with different linestyles - # appear on the legend + # appear on the legend with their image and label fig = plt.figure() ax = fig.add_subplot(111) ax.set_xlim(0, 1.7) @@ -589,7 +590,7 @@ def test_all_linestyles(): extensions=['png']) def test_all_arrowstyles(): # tests that annotations with different arrowstyles - # appear on the legend + # appear on the legend with their image and label fig = plt.figure() ax = fig.add_subplot(111) ax.set_ylim(0, 2.5) @@ -661,7 +662,7 @@ def test_all_arrowstyles(): extensions=['png']) def test_annotation_colours(): # tests that annotations with different colors - # appear on the legend + # appear on the legend with their image and label fig = plt.figure() ax = fig.add_subplot(111) ax.annotate("", @@ -692,8 +693,12 @@ def test_annotation_colours(): @image_comparison(baseline_images=['annotation_text'], extensions=['png']) def test_annotation_text(): - # tests that annotations with different text - # appear on the legend + # tests that annotations with different texts + # appear on the legend with their image and label + # note: the text itself does not appear on the legend, + # only the arrow. The text itself is self-explanatory. + # However, if only text is passed, the image will be + # the text. fig = plt.figure() ax = fig.add_subplot(111) ax.annotate("hello", @@ -704,17 +709,26 @@ def test_annotation_text(): 'color':'green'}, label="hello") ax.annotate("world", - xy=(0.3, 0.1), - xytext=(0.3, 0.9), + xy=(0.3, 0.9), + xytext=(0.3, 0.1), arrowprops={'arrowstyle':'<->', 'ls':'dashdot', 'color':'purple'}, - label="world") + label="world") + ax.annotate("short text", + xy=(0.5, 0.9), + xytext=(0.5, 0.1), + label="short text") + ax.annotate("long text", + xy=(0.7, 0.9), + xytext=(0.7, 0.1), + label="long text") + ax.legend() plt.show() -@image_comparison(baseline_images=['annotation_no_line'], +@image_comparison(baseline_images=['annotation_no_line_text'], extensions=['png']) def test_annotation_no_line_text(): # tests that annotations with no line, text, or both @@ -722,19 +736,19 @@ def test_annotation_no_line_text(): # note: if no text, it will not appear in the legend fig = plt.figure() ax = fig.add_subplot(111) - ax.annotate("no text", + ax.annotate("", xy=(0.1, 0.9), xytext=(0.1, 0.1), arrowprops={'arrowstyle':'-', 'ls':'dashed'}, - label="") + label="no text") ax.annotate("no line", xy=(0.3, 0.1), xytext=(0.3, 0.9), label="no line") - ax.annotate("no line or text", + ax.annotate("", xy=(0.5, 0.1), xytext=(0.5, 0.9), - label="") + label="no line or text") ax.legend() plt.show()