rL i-2ddlmZmZmZddlZddlmZddlmZddl m Z m Z ddl m ZddlmZddlmZmZddlmZddlZddlZGddZej6d Ze d gd ej:d k(rdnd dZe dgdd ej:d k(rdnddZdZ e dgddid dZ!e dgddid dZ"dZ#dZ$dZ%d Z&e d!g"d#Z'd$Z(d%Z)d&Z*d'Z+d(Z,Gd)d*Z-d+Z.d,Z/y)-)datetimetimezone timedeltaN) MagicMock)check_figures_equalimage_comparison)StrCategoryConverterUnitData) DateConverterc0eZdZdZdZdZdZdZdZy)Quantityc ||_||_yN) magnitudeunits)selfdatars a/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/matplotlib/tests/test_units.py__init__zQuantity.__init__s cddddddd}|j|k7r*||j|f}t||jz|St|j|jS)Nig?<g0(? i))hoursseconds)minutesr)rr)feetmiles)rinches)rr)rr r)r new_unitsfactorsmults rtoz Quantity.tose)-V+-)') K :: "4::y01DD4>>19= =DNNDJJ7 7rcBt|j|jSr)r rrrs r__copy__zQuantity.__copy__s 33rc.t|j|Sr)getattrr)rattrs r __getattr__zQuantity.__getattr__"st~~t,,rctj|jr#t|j||jSt|j|jSr)npiterablerr r)ritems r __getitem__zQuantity.__getitem__%sA ;;t~~ &DNN40$**= =DNNDJJ7 7rc@tj|jSr)r,asarrayrr%s r __array__zQuantity.__array__+szz$..))rN) __name__ __module__ __qualname__rr#r&r*r/r2rrr r s 84-8 *rr ctj}d}d}t||_td|_t||_|S)Nc t|dr|j|jStj|r* |Dcgc]}|j|jc}St ||jj|jScc}w#t $rJ|Dcgc]5}t ||jj|j7ncc}wc}cYSwxYwNr)hasattrr#rr,r-AttributeErrorr get_units)valueunitaxisvs rconvertz#quantity_converter..convert5s 5' "88D>++ + [[  (6;<T ,,<< E4>>#3477=GG G =! (!&(!DNN$4588>HH((( (s/B"B$BB C2,:C'& C21C2ct|dr |jStj|r"|D]}t|ds|jcSyyr9)r:rr,r-)r=r?r@s r default_unitsz)quantity_converter..default_unitsAsN 5' ";;  [[  #1g&77N #  r) side_effectc0tj|dS)Nrd)labeldefault_limits)munitsAxisInfo)uas rz$quantity_converter..Ks"OO!HMr)rJConversionInterfacerrAaxisinforC)qcrArCs rquantity_converterrR/sP  # # %B Hw/BJ)NOBK ];B Irz plot_pint.pngmpl20x86_64gQ?)styletolcdtjd<|tjt<t t j ddd}t t j ddd}tj\}}|jd |j||d |jt d d d |jt ddd|jjd|jjd|jj sJ|j"j sJ|j$j sJy)N)izaxes.formatter.limitsrrrg333333?leftztab:bluei grztab:red)colorxrz tab:greenrr)pltrcParamsrJregistryr r,linspacesubplotssubplots_adjustplotaxhlineaxvlineyaxis set_unitsxaxisrAcalledrPrC)rRyxfigaxs rtest_numpy_facaderpSs-2CLL()!3FOOH Q#W-AQ"G,AllnGCT"GGAq*JJxv&iJ8JJxY'{J;HHx HHy!  % % , ,, ,  & & - -- -  + + 2 22 2rzplot_masked_units.pngTg{Gz?) remove_textrUrVctjdd}tjj||dkD|dkz}t |d}t j \}}|j|y)NrZ)maskmeters)r,rbmaarrayr r_rcre)r data_maskeddata_masked_unitsrnros rtest_plot_masked_unitsr|ns` ;;r1 D%%++d$)q)A+BK h7llnGCGG rc|tjt<tj\}}|j tddtdd|j tddtddy)Nrwr)rJrar r_rcset_xlimset_ylim)rRrnros r test_empty_set_limits_with_unitsrysW 2FOOHllnGCKKX&H(=>KKW%xG'<=rzjpl_bar_units.pngdpir^) savefig_kwargrUcddlmcm}|j|j dd}d|j zd|j zd|j zg}d|zd|zd|zg}|j dtddd  }tj\}}|j||| |j|d|zz ||d zd |zzgy)NrET@rudt)bottomr~jt?) matplotlib.testing.jpl_unitstesting jpl_unitsregisterDurationkmEpochrr_rcbarrrdayrmwbrnros rtest_jpl_bar_unitsrs10 NN ..1 2C UXXq588|Q\2A S!c'1s7#A DXdAr2 3AllnGCFF1aFKKQWa!B%i5C-789rzjpl_barh_units.pngcddlmcm}|j|j dd}d|j zd|j zd|j zg}d|zd|zd|zg}|j dtddd  }tj\}}|j||| |j|d|zz ||d zd |zzgy)Nrrrrrurrrrrr[r~r) rrrrrrrrr_rcbarhrrs rtest_jpl_barh_unitsrs10 NN ..1 2C UXXq588|Q\2A S!c'1s7#A DXdAr2 3AllnGCGGAqqGKKQWa!B%i5C-789rcDddlmcm}|jt ddd}|j d|}t jj|j|dd}t jj|j|dd}||k(sJy)Nrrrrrr) rrrrrrrJra get_converterrA)rrjpldt_convjpl_convs r"test_jpl_datetime_units_consistentrs00 NN $2 B ++dr+ "Coo++B/77D$GG,,S199#tTJH h  rctjtjgdtjgy)Nzdatetime64[ns]dtype)r_scatterr,ryr6rrtest_empty_arraysrs$KK#34bhhrlCrc(tjddd}tjt|t}tj|d<t j \}}|j|||jjy)Nz2005-02z2005-03z datetime64[D]rr) r,arangelenfloatnanr_rcrcanvasdraw)timesrlrnros rtest_scatter_element0_maskedrs` IIi/ BE #e*E*A 66AaDllnGCJJuaJJOOrc tjd}|Dcgc]}tdd|dzdz}}tj\}}|j ||t d|jjycc}w)N rZrurg?)days) r,rrr_rcerrorbarrrr)rmirlrnros rtest_errorbar_mixed_unitsrsj " A/01!$1q519 %1A1llnGCKK1iS)*JJOO 2sBpng) extensionscGddt}|jj|ddddd|jjtdddddy)Nc eZdZy)test_subclass..subdateN)r3r4r5r6rrsubdaters rrirro)rrcre)fig_testfig_refrs r test_subclassrsX (  WT1a0!S9 HT1a0!S9rc|tjt<ttjdddd}ttjdddd}ttjdddd}t j ddd d \}\}}|j|||j|||jj|jjcxk(rdk(sJJ|jj|jjcxk(rdk(sJJ|jjd |jjd |jj|jjcxk(rd k(sJJ|jj|jjcxk(rd k(sJJy) Nrrrrrurrrallsharexshareyrr) rJrar r,rbr_rcrerjr<rhri)rRrmy1y2rnax1ax2s rtest_shared_axis_quantityrs 2FOOHQ2&0A "++aB' 0B "++aB' 0Bll1aeDOC#sHHQOHHQO 99   CII$7$7$9 DW DD DD D 99   CII$7$7$9 CV CC CC CII "II! 99   CII$7$7$9 FY FF FF F 99   CII$7$7$9 EX EE EE Erc  tddDcgc]}td|dtj!}}tddDcgc]}td|dtj!}}t j ddd\}\}}|j ||j ||jjttd |jjttd k(sJycc}wcc}w) Nr r)tzinfoiruT)rrZ)r) rangerrutcr_rcrerhrirr)rrrrnrrs rtest_shared_axis_datetimers=B1b\ J(4Ahll 3 JB J=B1b\ J(4Ahll 3 JB Jll1a5OC#sHHRLHHRLII!345 99??hyq'9: :: : K Js $D$D cddd}ddd}tjdddd\}\}}|j|j|j |j|j|j |j j tdd gd|j jjjvsJy) NrrurMrrrTrcd) r_rcrekeysvaluesrjrir r<_mapping)d1d2rnrrs rtest_shared_axis_categoricalrsq Bq Bll1aTBOC#sHHRWWY $HHRWWY $II#s,- #))%%'00557 77 7rc ddd}t}t}t}tj\}}|jj ||jj |k(sJ|j|j|j|jj |k(sJ|jj |tjt5|jj |dddtj\}}|j|j|j|jj |tj\}} | j|j|jtj5| jj |dddy#1swYxYw#1swYyxYw)Nrrur)r r r_rcrj set_converterrrerrpytestraises RuntimeErrorwarns) rstr_cat_converterstr_cat_converter_2date_converterfig1rfig2rfig3ax3s rtest_explicit_converterrsq B,..0"_N ID#II-. 99 " " $(9 99 9HHRWWY $ 99 " " $(9 99 9II-. | $5  345 ID#HHRWWY $II-. ID#HHRWWY $ 0 /005500s6G8H8HH c p|tjt<tj\}}|j j tdgd|j|jdk(sJ|jj tdgd|j|jdk(sJtj\}}|jd|jttjdddttjdddd |j|jd k(sJ|jd k(sJtj\}}|jd|jttjdddttjdddd |j|jd k(sJ|jd k(sJtj\}}|j j tdgd|jd|j|jdk(sJ|jd k(sJtj\}}|jj tdgd|jd|j|jdk(sJ|jd k(sJy)NrrrFrYrrrrur)rru)rrY)rr)g<@g?@)rJrar r_rcrj update_unitsdraw_without_renderingget_xlimrhget_ylimrfrer,rrg)rRrnrros rtest_empty_default_limitsrso 2FOOH||~HCII8RD'23 <<>X %% %II8RD'23 <<>X %% %llnGCJJrNGGHRYYq!_g . RYYq!Q' 02 ;;=F "" " ;;=G ## #llnGCJJrNGGHRYYq!_g . RYYq!Q' 02 ;;=G ## # ;;=F "" "llnGCHH(B412JJrN ;;=H $$ $ ;;=L (( (llnGCHH(B412JJrN ;;=H $$ $ ;;=L (( (rc*eZdZdZddZedZy)Kernelc8tj||_yr)r, asanyarray_array)rrys rrzKernel.__init__=smmE* rNc|C||jjk7r*|(|s&td|jjd|dtj|j|}|s|Stj |S)NzConverting array from z to z requires a copyr)rr ValueErrorr,r1copy)rrrarrs rr2zKernel.__array__@sz  $++*;*;!; ,T[[->->,?tg-/ jjE22RWWS\2rc.|jjSr)rshaper%s rrz Kernel.shapeKs{{   r)NN)r3r4r5rr2propertyrr6rrrr<s + 3!!rrcHtgd}tj|y)N)rrurrrZ)rr_re)kernels rtest_plot_kernelrPs O $FHHVrc(tjdd\}\}}|jd}|j|d}|j |t j |dfd|fdd||}|j||jy) Nru)rrZ)nrowsfigsizez 2017-01-01T12z test testrr)coordsAcoordsBaxesAaxesB) r_rc TimestamprgrfmpatchesConnectionPatch add_artistr)pdrnrrrmrlrs rtest_connection_patch_unitsrVsllGrsv22#O%!>* **>F?#7+8++-9atE3E32*+W+8++-9atEE>&'!& G= := :'(!& G= := :D (:): F ;80B&)T!!( !r