From 5b51f8b41a4eaf8b324e68a3ad69640276e2cbfd Mon Sep 17 00:00:00 2001 From: KiHoLee Date: Mon, 17 Aug 2026 13:05:36 +0900 Subject: [PATCH] fig_floor: legend in dedicated headroom (no curve overlap) --- code/replot_all.py | 7 +++++-- fig/fig_floor.pdf | Bin 45637 -> 45629 bytes 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/code/replot_all.py b/code/replot_all.py index 83d314d..8b5796e 100644 --- a/code/replot_all.py +++ b/code/replot_all.py @@ -81,8 +81,11 @@ def fig_floor(): fontsize=7, color="gray") ax.set_xlabel("Per-block SNR $\\rho$ [dB]") ax.set_ylabel(r"Per-user MSE $\mathbb{E}\|\hat{\mathbf{e}}_u-\mathbf{e}_u\|_2^2$") - ax.set_xlim(0, 40); ax.set_ylim(0.4, 1.05) - ax.legend(loc="lower left", bbox_to_anchor=(0.02, 0.18)) + ax.set_xlim(0, 40); ax.set_ylim(0.4, 1.32) + ax.set_yticks([0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0]) + # legend in dedicated headroom above the curves (max 1.0), no overlap + ax.legend(loc="upper center", ncol=2, columnspacing=0.9, + handlelength=1.6, borderaxespad=0.3) save(fig, "fig_floor") diff --git a/fig/fig_floor.pdf b/fig/fig_floor.pdf index 263cc2b5000fd41b19c6bf8954358a29aeebc335..a099679047aa8beb9685601909509b87849ec78f 100644 GIT binary patch delta 4638 zcmZuxc|276|HhSUS+aF$v2PXU%sI13HL_$Wu0m9ZELjuA&LN66)D&gOmc|;gg%V{i zly$6SHc{wraL8g}L)TPahCEC)N zl*5;iwSY>sjj9d*^yRl&^Hta9Bd^cL>&zGH%vW(qlwpO6HDOomtm^lOaUW>p+aleG z=2J;~*zbE3>zZ0TewJ>KFrYebFZ1CN=d=05>z%o@N4ivs=78h8aHOx#`j_iZ3&^Si zM)NZlEuv{dm1j$=XFhA=_g_CW?zv1|)tZl|l5dEYIa0E+3C;>gnGUP%o~qJWZ0Dj_ zXE(Vk{nbyOo`zdzI^Qk-;0o!gc2Yf(a>O4D#xER4ctYh}S6GC(M2{r7%Bk;6#mQV( zWfA61SR({YXDst-$l$m;__y!k3SZe3U1_|R>-S`lIx&LGmkVk9T6Yj^7BPIdu~;Rd z(Y9wn^liMrEa&h#5*F3Gunnx9u;Pz2hAn)Yo`ZGhbVcB?@`)y$tV1&Fm@Q`N zNpV$B#W5FeiP|%cMZwkXJ$jYo9h@OhOwf1Vjs71SbCbOjT)cPz_b;@L-IewlZLIgM zH66b3hDzor=R#;<>TxRXvceL5%USEgmlbyt1xls;rKzj_2OiXB`;Hr0e&R8t7kZqH z`)%j%9|rYe*gE+%_Qz!;O--f2k+F6QO5zLKG7)pdDmDilTIhsEpzyaTc6k)qMUh{NC4I9Qk+lOv#y_fW zAI)ING^X5~&d!^fl4@nw)Dye4VHGvGUFZJp%G`-dY2E^t_g+)n@dl&ibbo10J>8@a zPQ1dNqyF^$wLp}MYuDrMoA(E7JETq!o1WP}rb|7a-Rwivc;9HzUr{<*@FwZaoyNiC zrLo@2jwGa0b@DE|ywC_}dNk!c@;v&XW8wEgst<+~=ZkWZx$oXbZ%8K}i1=LV`f%u# zV4iXSZQOct#F5XN_vk=l!I9FFZEW{{lk2$mT`c92LqbOW-0*I@M}?r&P@v63VnePCf9*Bp=ItlKyV`7i@VpHKrll>)EAdDRoas%kMU3DbXB?<1NZHD z#ri;%#TLas-WhXfpVSYP z#rQ9jOc&krc09Z`RMB`!R?CeqD)1TMDax+8+bw5HtuF|1dY)OJs2+3{kj;|S_YOPA z5{}bGhExtF#O}P;q8mbe!s(!s^eDusn_U65*p{qXNc50Z-Xz6Sc2BG2ag=A=}BU{=Dhq zSzg+Xdnkc2sIPOoP4@<}h$bG>in>(wDB!+!D|oK^ztfkKnZJ<2)4Q zQ?F=yMK{x!-J$JNSi(cek7wg*YVx$pdR#cojWYb7b7vXPiu6)sZaHwj?|*rHH(k9~ z1QiH{>#7vL?xWqieqqRO7`}Ff)?K3c;3v<)L!ADmrHb-{v!dH(2bwC6PAeU;ZkQvM zu=pUS-^uv;?<1Sp59JvuwThE>nmQd`8Pjhjt{E7%=JejDTv^9a-7m_%9eyWQr;S;b zJgqq=)>mSXfv|Ab4+HeXRp3?233{b&8% z?Zw+-Pjx*P8#$>f8b^pTcp-R|TYp#8g!UCv#2`)HZFt78jBhk*&WkH>BlQXOWBquC z#Z+*XH6)_$fhOo%!m*hK?6Fe7@<7 zszhJgOD$d*7!nuJx5{q)+`}oQ{wT=9C4%pUWqwj~2=*GM-c{T1iv}Fn?vmP~`a!Jb zd!)9A$Z@RsS{V+bTBPVTQjEty0;nHHaG19(J6yayT>0+4%8iab`ObILFZ&zrj!OS{ zg_+48ZYI4HgM3|)9F&Kd=QZULRB4`HkVST|+qc{LBC7Stis&cp#&&-=$A7L65sp07 zne+HXrU_Z)u+e>e$*0mm>0NvidyGt4LX(k;d;(SaB9wpy1!dERo%e+vDDO(^$U5~K zmqM3urZH8gDa)7@#ExrZT(4=mlyS`EY0Tl4##x~$wKe;TP0F#j<^E4)9oB6=X}{|h zs<~>41(4S{65j-1S>Mq2vsWQTF*CQl=t0w3YYC1!)@t@^1%H@`96meR`nwZuA&@YJ zR7s5$3d*XFBs3g4m*dXiEN3t(EuZy#=%&f>x48!kF)-~E+lKu?Q8ZwrI^o`vlPu?M ziCJHoYucg}(iEV3Sgy>>skxELOy(!)P35yuat(tKh4hu>F*9Y-%|1VWpOEqS{zyTh ze$KPD;J_+c$z_%fpF&@E#e$w@TLYwb>{9brW1E;6&BzPU@*EaNwvAnCv$Y_;)(k_e zddVuD{dKGM3+G}Tqjx-7^csGAZFC89yidPqIVR_*`M^c!HZj}Xw8Y1#s|XqWEGQ~% zxnEVM#Uk8S>62uZbZ?kG@gj}FKU0%rPOY&y_Oj?eel9oIa$|Jnj?}%fdf^_Vt<4sD zHVty*ecnMZskrFEUs#=@JnWZniu-P9UeJ4S1IuPy5s#?V;$V5fK>7ST>O1Pp#dAqC z+6g|}U|DQ7n=?GxhbK?0IYbk_Mwqux?P?LzQKM)LXorINN< zSG!YvDN&{VX8EVwLh}yzr9Nq|nG@bNF??mRPg_ZA%HxnlPiRqq6FQKBq=#KWIY`8u zS~xhP_~Nne`evm-YHU-OUa@D3iozRMgR6DI+va3VrBKEdlDGib@#CH6DZZ(B52q#d zG1Cq9tD*jb(hJJ9V~UA0?o?k)LIHV1l%uyQUg{~1HGV=OEM8<^t*lr|A&1a*>%oSO z)fMMDi8QDqds9TWeb_=4`R>!@NGum98`|7hnTa@Ge9PHKZHEHejT6z&Xol*wNvaO! zM2Xe0jT22#cjYGFR6Symo?1ixJN|5W8~K$v|3mD8I*L!94fp!x@%@oCpVod zFts}|s#TFl9y;L=8*~ek|GWGCUZ268!#3GBm#*^dS16>nF4g-~JjfhSsou9vFVH?J}n;|AKfjJ6hup`?u$8<|X-! zH3eRZw+G(_uEsh{i?||@mt;*PdG^oSoXC=XF-ovWO%lT&J4Y0HpX|r$CQZnp{ z)pJKjLM;R6Cv@42uztNliuC-7YfIC4nZGdG7=bs8%5viWw#OP-gSys#(s_yNd&%j( zx9f(|R6549ITGC6I6Ir2Yvd)7|K;a~ zE!93Fv$acma>~pIS>~$3SyskCn?F3O@4~!ajN2zBAKMZw*hm5QRa1iJi=BNcV{hgT z)|UPpa$KT%w^SZjTK>_z8EmqTl$mhvq8?HP5Rcu<3Yi=HsU=XxYtwLkaD4uty6c&O zBhH^r(8FI*H(9TWo^j!}cenHM_O!Qg`*U^K)|nebNdjDwf36@9iz*i4OHSqhApnLU zQdzE{Js=7E`ANDnJ16nw)FhU z2!VJU69!`$PXe$g9EM>Iz~Dh949lznz@Sn1zxE>kTor&YD8?%QSTu-cBEf)+Vn6@~ zG0uSijQ)R;e>gw@gZsr|Wb5uA0HB#wqhTxqF}Ssx2?IcwNem1!i3TAo#3Tm7W47-9 ztNkDZ{R=S&G6oL9|1t-`5YrqEi(?|j!GGHiApdO|h{M2)T>!CoJYytV#5g7rJiydG z5C`BHBSE1sz^`H?004zT!M}okVlW0pvMCTk{)LK35(l@?#xP2U&|6((2o-_>6r&dq4ufJ6h(lq1ol^w>2nS=CNU%6& z3=IPyDXoy%GYE^vF!~4sXr|I{?Pq%CFaRpryv~eKegcdZ>L}Yi-$=XMa+_5 z6dGV`8;k-$#&}@VR;L-@aV`v= MTTV{fNQe9X0LoH=Q~&?~ delta 4605 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 F{13wUd_({M