K iYddlZddlmZddlZddlmZddlmZmZm Z ddl m Z ddl m Z mZddlmZmZmZmZddlmZmZdd lmZdd lmZmZdd lmZdd lmZdd lm Z ddl!m"Z"ddl#m$Z$ddl%m&Z&ddl'm(Z(ddl)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/ddl)m0Z0m1Z1m2Z2m3Z3m4Z4ddl5m6Z6m7Z7m8Z8m9Z9m:Z:ddl;mZ>m?Z?m@Z@ddlAmBZCddlDmEZEe0e(ddeFfZGGdde*ZHGdde*ZIdZJejjd d!d"gd#ZMejjd d!d"gd$ZNejjd d!d"gd%ZOejjd d!gd&ZPejjd d!d"gd'ZQejjd d!d"gd(ZRejjd d!d"gd)ZSejjd d!d"gd*ZTejjd d!d"gd+ZUd,ZVejjd d!d"gd-ZWejjd d!d"gd.ZXejjd d!d"gd/ZYejjd d!d"gd0ZZe=d1d2Z[ejjd d!d"gd3Z\ejjd d!d"gd4Z]ejjd d!d"gd5Z^ejjd d!d"gd6Z_ejjd d!d"gd7Z`d8Zad9Zbejjd d!d"gd:Zcejjd d!d"gd;Zdd<Zed=Zfd>Zgd?Zhd@ZidAZjdBZky)CN)TemporaryDirectory)Sum)Ioopi)Ne)Symbolsymbols)LambertWexp exp_polarlog) real_rootsqrt) Piecewise)cossin)Min)meijerg)Integral)And)S)sympify) import_module)Plotplotplot_parametricplot3d_parametric_lineplot3dplot3d_parametric_surface) unset_show plot_contourPlotGridMatplotlibBackend TextBackend)LineOver1DRangeSeriesParametric2DLineSeriesParametric3DLineSeriesParametricSurfaceSeriesSurfaceOver2DRangeSeries)skipskip_under_pyodidewarnsraiseswarns_deprecated_sympy)lambdify)ignore_warnings matplotlibz1.1.0)min_module_versioncatchceZdZdZdZy)DummyBackendNotOkz Used to verify if users can create their own backends. This backend is meant to raise NotImplementedError for methods `show`, `save`, `close`. c,tj|SNobject__new__clsargskwargss d/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/sympy/plotting/tests/test_plot.pyr;zDummyBackendNotOk.__new__+~~c""N)__name__ __module__ __qualname____doc__r;rBr@r6r6&s #rBr6c(eZdZdZdZdZdZdZy)DummyBackendOkzi Used to verify if users can create their own backends. This backend is meant to pass all tests. c,tj|Sr8r9r<s r@r;zDummyBackendOk.__new__3rArBcyr8rGselfs r@showzDummyBackendOk.show6 rBcyr8rGrLs r@savezDummyBackendOk.save9rOrBcyr8rGrLs r@closezDummyBackendOk.close<rOrBN)rCrDrErFr;rNrQrSrGrBr@rIrI/s#   rBrIcjtd}t||ddfdt|dzdz|ddfdy)Nxrtext)backend)r r)rUs r@test_basic_plotting_backendr[?s7s AQ1Iv&AAq!9f-rBadaptiveTFc  ts tdtdtdtd5}t dd|d }t t zt zd |d }|j|d |d _d|d_d|_ d|_ d|d_ d|_ d|_ d|_d}|jt j"j%|||j&j)|jt dz|d|j+t dzdz|ddd}|jt j"j%||t dzddf|d|d<d}|jt j"j%|||j&j)t t dt,zdt,zf|d}d}|jt j"j%|||j&j)t t |d}d}|jt j"j%|||j&j)t dzdd ffdzd!dff|d}d"}|jt j"j%|||j&j)t/t0fd#t t3dd kDfd$d%df|d}d&}|jt j"j%|||j&j)t t3dkfdzdfd!df|d}d'}|jt j"j%|||j&j)t |d}t d|d}|j|d(}|jt j"j%|||j&j)t3d%d%kft5d%kd kfdzt5d kdkfdzdk\f}t |d!df|d}d)}|jt j"j%|||j&j)dddy#1swYyxYw)*N"Matplotlib not the default backendrUysympy_prefixTf1 legendlabelr\nf2)rgr\rhc|Sr8rGas r@z&test_plot_and_save_1..SArBrbrZz Big titlez the x axisz straight linerZrZ)iz!test_basic_options_and_colors.pngr\rhrVrYztest_plot_extend_append.pngztest_plot_setitem.pngztest_line_explicit.pngztest_line_default_range.pngztest_line_multiple_range.pngctSr8)rrUr_sr@rmz&test_plot_and_save_1..xs 41:rBrTztest_plot_piecewise.pngztest_plot_piecewise_2.pngztest_horizontal_line.pngztest_plot_piecewise_3.png)r2r+r rrrrextend line_colortitlexlabelrgrf aspect_ratioxlimrQospathjoin_backendrSappendrr. ValueErrorrr) r\tmpdirpfilenamep1p2frUr_s @@r@test_plot_and_save_1rDsM  12s As A 8 ,G 4th" E 3q61SV84(b I  %!!$! 6 rww||FH-.  a!eh"56 a!eQTH;A>?0 rww||FH-.AqD1b!*x2>!* rww||FH-.  Q!RUAbD)H C+ rww||FH-.  Q(b 10 rww||FH-.  !Q$B #adQAJ%7(b Q1 rww||FH-. z-. Aq1u:y1Ar1:TV W, rww||FH-.  Aq1u:1d|4q"aj8WY Z. rww||FH-. !h" - !h" - " - rww||FH-.  r1r6lQB!GQU(;$< T3qAvq1u% &AqAv 8 QAJR 8. rww||FH-. OGGGs S:T99Uc 4ts tdtd}td}td}td5}t t |t ||d}d }|jtjj|||jjt t |t ||d d fd d |d}d}|jtjj|||jjt t |t |f|t |f|d}d}|jtjj|||jjt t |t ||ddff|t ||d d ff|d}d}|jtjj|||jjt |t |d|d}d}|jtjj|||jjt t |t |dd}d}|jtjj|||jjtt |t ||d d|d}d}|jtjj|||jjtt |t |||d d fft |t |||ddff|d}d}|jtjj|||jjtt |t ||d|}d}|jtjj|||jjt||z|d}d }|jtjj|||jjt| |z||z|d d f|d}d!}|jtjj|||jjt||z|ddf|ddff| |z|ddf|ddff|d}d"}|jtjj|||jjtt ||zt ||z ||z |d}d#}|jtjj|||jjt|t |z|t |z||d d f|d d fft ||zt ||z ||z |d d f|d d ff|d}d#}|jtjj|||jjt!t |t |z|d d f|d d f|d}d$}|jtjj|||jjt!|d%z|d%zz|dz|dzz|d d f|d d f|d}d$}|jtjj|||jjt!|d%z|d%zz|d d f|d d ff|dz|dzz|ddf|ddff|d}d$}|jtjj|||jjdddy#1swYyxYw)&Nr^rUr_zr`rardrrztest_parametric.pngrurvTparametric_plotreztest_parametric_range.pngztest_parametric_multiple.pngrwrVz#test_parametric_multiple_ranges.png )depthr\rhztest_recursion_depth.pngFiztest_adaptive.png3d_parametric_plotztest_3d_line.pngztest_3d_line_multiple.png)rhr\ztest_3d_line_points.pngztest_surface.pngztest_surface_multiple.pngz test_surface_multiple_ranges.pngztest_parametric_surface.pngztest_contour_plot.pngrY)r2r+r rrrrrQrrrrrSrrr r"r\rUr_rrrrs r@test_plot_and_save_2rs  12s As As A 8 ,z CFCFX D( rww||FH-.   FCFQAJt;L %/ rww||FH-.  SVSV,q#a&k %1 rww||FH-.   VSVaQZ (1c!fq"aj*A %9 rww||FH-.  As1vR %- rww||FH-.  CFCFUc B& rww||FH-.  # FCFAd2F %& rww||FH-.  " VSVQB +c!fc!fa!R-L %/ rww||FH-.  "3q63q61 , rww||FH-.  1q58r 2% rww||FH-.  A261q51b!*x2 F. rww||FH-.   UQAJB +qb1fq"aj1b!*-M %6 rww||FH-.  &c!a%j#a!e*a!e %0 rww||FH-.  & s1vXqQxQAJB ; QZQUQUQAJB C %1 rww||FH-.  QAB QAJ %* rww||FH-.  A1adQTkAr1:2qz %* rww||FH-.   TAqD[1b!*q"aj 1 TAqD[1b!*q"aj 1 %+ rww||FH-. uzzzs _``c  ts tdtd}td}td}td5}t t ||d}d |d _d }|jtjj||d |d _d }|jtjj|||jjt |t |z|t|z|d df|d}d|d _d}|jtjj||d|d _d}|jtjj||d|d _d}|jtjj|||jjtt |dt |ztd|zzzt|dt|ztd|zzzdt d|zz|d dtzf|d}t!|t d|z|d _d}|jtjj||d|d _d}|jtjj||d|d _d}|jtjj|||jjt#t ||z|d dtzf|ddf|d}d|d _d }|jtjj||d!|d _d"}|jtjj||d#|d _d$}|jtjj||t!|||ft'|d%tzz dz|dzz|d _d&}|jtjj|||jjt)|td|zz|t d|zz||d'd(f|d'd(f|d}d)|d _d*}|jtjj||d+|d _d,}|jtjj||t!|||ft'|dz|dzz|dzz|d _d-}|jtjj|||jjdddy#1swYyxYw).Nr^rUr_rr`rardrrc|Sr8rGrks r@rmz&test_plot_and_save_3..+rnrBrztest_colors_line_arity1.pngc|Sr8rGrlros r@rmz&test_plot_and_save_3../qrBztest_colors_line_arity2.pngc|Sr8rGrks r@rmz&test_plot_and_save_3..5rnrBz!test_colors_param_line_arity1.pngc|Sr8rGrs r@rmz&test_plot_and_save_3..9rrBc|Sr8rGrs r@rmz&test_plot_and_save_3..=rrBz"test_colors_param_line_arity2b.pngg?rYrtztest_colors_3d_line_arity1.pngc|Sr8rGrs r@rmz&test_plot_and_save_3..JrrBztest_colors_3d_line_arity2.pngc|Sr8rGrlrocs r@rmz&test_plot_and_save_3..M!rBztest_colors_3d_line_arity3.pngrurvc|Sr8rGrks r@rmz&test_plot_and_save_3..SrrBztest_colors_surface_arity1.pngc|Sr8rGrs r@rmz&test_plot_and_save_3..VrrBztest_colors_surface_arity2.pngc|Sr8rGrs r@rmz&test_plot_and_save_3..YsQrBztest_colors_surface_arity3a.pngrVztest_colors_surface_arity3b.pngr{rZc|Sr8rGrks r@rmz&test_plot_and_save_3..crrBz!test_colors_param_surf_arity1.pngc ||zSr8rGrs r@rmz&test_plot_and_save_3..fs !A#rBz!test_colors_param_surf_arity2.pngz!test_colors_param_surf_arity3.png)r2r+r rrrr}rQrrrrrSrrr lambdify_r surface_colorrr rs r@test_plot_and_save_3rs  12s As As A 8 ,G Q(b 1%!0 rww||FH-.(!0 rww||FH-.  3q61SV8aBZ(b I%!6 rww||FH-.(!6 rww||FH-.(!7 rww||FH-.  " FSQZAaC( ( FSQZAaC( ( AaCL 1R4L8r  3 $As1Q3x0!3 rww||FH-.(!3 rww||FH-.+!3 rww||FH-.  3q6!8aAbD\Ar1:B O(!3 rww||FH-.+!3 rww||FH-..!4 rww||FH-.&1ay$AbD1}q!t7K2LM!4 rww||FH-.  %a#a!e*na#a!e*naB QAJR A(!6 rww||FH-.-!6 rww||FH-.&1ay$q!tad{QT7I2JK!6 rww||FH-. OGGGs VW  Wc ts tdtd}td}td5}t t t |dzdzt|dzdzz|d|f}t||dd f|d d }d }|jtjj|||jjdddy#1swYyxYw)Nr^rUr_r`rarYrZrrvrdT)r\rhforce_real_evalztest_advanced_integral.png)r2r+r rrrrrrrQrrrrrS)r\rUr_rirrs r@test_plot_and_save_4ros  12s As A 8 , S#a&!)a-adQh781a) D Q1IB M/ rww||FH-.  s BCCc ts tdtd}td}td5}t d||zz |dt f}t ||ddf|d }d }|jtjj|||jjt t d|z |d|f|ddfd |d }d |d_ d |d_d}tt 5|jtjj||ddd|jjdddy#1swY,xYw#1swYyxYw)Nr^rUr_r`rarZrYrdrrztest_advanced_inf_sum.pngFrNr\rhTrztest_advanced_fin_sum.png)r2r+r rrrrrQrrrrrS only_integersstepsr1 UserWarning)r\rUr_rsrrs r@test_plot_and_save_5rs8  12s As A 8 , !Q$Ar # Q2JR 8. rww||FH-.  QqS1a)$q!Rju %!!! .[ ) 3 FF277<<1 2 3 /( 3 3)s$B?E30E#"EE EE#c ts tdtd}td5}d}t t |t t|zz}|jtjj||tt5t tt| }|jtjj||dddt t|}|jtjj||t tt|}|jtjj||d|dzzt!t t"zzdz }t%dd |}d|dzzt!t t"zzdz }t%dd |}||zd t"zz } t't(d d 5t | |ddf|d}|jtjj||ddddddy#1swYlxYw#1swYxYw#1swYyxYw)Nr^rUr`raztest.pngrvrY))?rG))rvrrrG0z&The evaluation with NumPy/SciPy failedFmatchtest_stacklevelgư>{Gz?rdrr)r2r+r rrrrrrQrrrr1RuntimeWarningrr r rrr-r) r\rUrrrx1m1x2m2exprs r@test_plot_and_save_6rs  12s A 8 ,3 Q!CF(" # rww||FH-. ^ , 3T$r(^$A FF277<<1 2 3 !  rww||FH-. hqk" # rww||FH-.AX 1"R%( ( * ^%8" = q!tVi"o %a ' \#4b 9RBG$  :!  3 TAtT?XDA FF277<<1 2  3133 3 3 3 3133s?A(I"AI DI"6AI8I" I I"I I""I+c ts tdtd}td}td5}t ||d}t t |t|f|t |fd|d }t t|t ||dd }tt |t||d|d }td d ||||}d } |jtjj|| |jjtd d||||}d} |jtjj|| |jjt t||t t fd|d } d| d_t t%d|dkDfd|ddfd|d } t'|d z|d zz|ddf|ddff|d z|d zz|dd f|dd ffd|d } tdd | | | }d} |jtjj|| |jjdddy#1swYyxYw)Nr^rUr_r`rardrrFrr\rhrNrYztest_grid1.pngrVrtztest_grid2.pngc|Sr8rGrks r@rmz(test_plotgrid_and_save..QrBrrZrzr{rurvrwztest_grid3.png)r2r+r rrrrrrr#rQrrrrrSrr}rr") r\rUr_rrrp3p4rrp5p6p7s r@test_plotgrid_and_savers.  12s As A 8 ,  !h" - c!fc!f-3q6{%  FCFX%A #CFCFAE% Q2r2r *# rww||FH-.  Q2r2r *# rww||FH-.  #a&!bS"EH K&1 )QAJ 2QAJU%  TAqD[1b!*q"aj 1 TAqD[1b!*q"aj 1% Q2r2 &# rww||FH-. A   s HIIcts tdtd}t||d}t|dz|d}t|dz|d|j |dt |j dk(sJtt5|j |dddtt5|j |j dddy#1swY=xYw#1swYyxYw)Nr^rUrdrrrYr) r2r+r rrlen_seriesr. TypeError)r\rUrrs r@test_append_issue_7140rs  12s A a(b )B adX ,BQR(IIbe rzz?a     "    "**s C3C$C!$C-c ts tdtd}t|t t j t j fdd}|jjt dt j t j fd}|jjt ddtdtdf}|jjt dtdtdfd }|jjttfd ttfd ttfd ttfd y)Nr^rUr{rZrd)rylimr\rhz-3.14z3.14)rr\rhrr\rhrrcFtdtj dfdSNrdrZrrrr ImaginaryUnitr\eqnsr@rmz"test_issue_15265..$s#S8r??"A&W6rBcDtdddtjfSNrdrr{rrrsr@rmz"test_issue_15265..(s S8rAOO46rBcDtdtjdfdSr)rrNegativeInfinityrsr@rmz"test_issue_15265..,s"S8r$$a(w8rBcDtdddtjfSr)rrInfinityrsr@rmz"test_issue_15265..0s S8rAJJ/1rB) r2r+r rrrPirrSrr.r)r\rUrrs` @r@test_issue_15265r s*  12s A a&C Sqtt}7XLAJJ SwqtteQTT]XLAJJ SwRg 0 2AJJ S8rg 0w @AJJ : 67 : 67 : 89 : 12rBcvts tdttt t fdy)Nr^c$jSr8rNrsr@rmz!test_empty_Plot..=s rB)r2r+rrr.NotImplementedErrorrs@r@test_empty_Plotr4s+  12 F A  01rBcts tdtd}|dzd|dzzz |dzz}t||ddf|dd }t t 5t |d jd dk\sJ dddy#1swYyxYw) Nr^rUg333333?rdrVrYrFrr)r2r+r rr1rrget_datar\rUrrs r@test_issue_17405r@s  12s A 3AqD1a4A QC x2EBA  (-1Q4==?1%&",,,---s %BB cts tdtd}t||ddf|ddd}t |d j d dk\sJ|d j d k(sJ|d jdk(sJy) Nr^rUgMbP?drrF)r\rhxscalerNrgY@)r2r+r rrrendstartr\rUrs r@test_logplot_PR_16796rPs  12s A QD#R5 "A qt}}q! "b (( ( Q488u   Q4::  rBcts tdtd}tt |d|d}t |dj ddk\sJy)Nr^rUFrrr)r2r+r rr rrrs r@test_issue_16572r_sO  12s A Xa[ux2>A qt}}q! "b (( (rBcvts tdtdd}tt t tt z|zz|z tt t t z|zz|z zt|dfdt zdf}t|d|d }t|djddk\sJy) Nr^kT)integerrrYFrr) r2r+r rrr rrrrr)r\rrrs r@test_issue_11865rks  12sD!AA2c!B$q&k>!#aQBrE!G nQ&661aAAbD$<PA QUX4A qt}}q! "b (( (rBzLWarnings not emitted in Pyodide because of lack of WASM fp exception supportc "ts tdtd}tt t ||dz z ddd}t tdd 5t|d jd d k\sJ dddy#1swYyxYw) Nr^rUrYrVFT)rNr\zinvalid value encountered inrrr) r2r+r rrrr-rrrrUrs r@test_issue_11461rys  12s A YAqsG q )EA , -1Q4==?1%&",,,---s %BBc ts tdtd}tt |t ||ddt zfdd|d}|jdk(sJt|djddk\sJy) Nr^rUrrYrpFr)rrNr\rh) r2r+r rrrrrrrrs r@test_issue_11764rsy  12s AAAAq2vR AA >>V ## # qt}}q! "b (( (rBcts tdtd}tt |dd|d}|j t k(sJt|djddk\sJtt |dd|d}|j tk(sJt|djddk\sJtt |d d|d}|j t k(sJt|djddk\sJtt |d|d }|j t k(sJt|djddk\sJy) Nr^rUr2Fr)rXrNr\rhrrWdefaultr) r2r+r rrrXr$rrr%)r\rUpmptpdrs r@test_issue_13516r sC  12s A c!flR PB ::* ** * r!u~~" #r )) ) c!ff58r JB :: $$ $ r!u~~" #r )) ) c!fieh" MB ::* ** * r!u~~" #r )) ) SV%(b9A 99) )) ) qt}}q! "b (( (rBcts tdtd}t||dz|ddf|d}|j}|j j \}}t|dzdksJt|dz dksJ|j j\}}t|dzdksJt|dz dksJy)Nr^rUrYrrdrrr) r2r+r rraxget_xlimabsget_ylim)r\rUrrXxminxmaxyminymaxs r@test_plot_limitsrs  12s A Q1q#rlXA   tby>A  $$&JD$ tby>B   tcz?R  rBcJts tdtd}dt|zdt |zd|z|ddff}t |t|||ddff}t |||d}|j }|jj\}}t|dzdksJt|dz dksJ|jj\}} t|dzdksJt| dz dksJ|jj\} } t| d zdksJt| d z dksJt |||d}|j }|jj\}}t|dzdksJt|dz dksJ|jj\}} t|dzdksJt| dz dksJ|jj\} } t| d zdksJt| d z dksJy) Nr^rUrYrurv<rrrrd) r2r+r rrrrr rrrget_zlim) r\rUv1v2rrXrrrrzminzmaxs r@"test_plot3d_parametric_line_limitsrs  12s A CF(Ac!fHacAr1: .B a&#a&!aQZ (Br2B?AjjG$$&JD$ tax=4   tax=4  $$&JD$ tax=4   tax=4  $$&JD$ tby>D  tby>D  r2B?AjjG$$&JD$ tax=4   tax=4  $$&JD$ tax=4   tax=4  $$&JD$ tby>D  tby>D  rBc ~ts tdtd}tt |dd|d}|j j j}|ddk(r|d d k(sJtt |dd |d}|j j j}|dd k(r|d dk(sJtd d ||d|d}|j j j}|ddk(r|d d k(sJtt5tt |dddddy#1swYyxYw)Nr^rUr2)rtrd)rXsizer\rhrrrZrt)rvrdrvrY)rrY)r r\rhr)r{rV)rXr ) r2r+r rrrfigget_size_inchesr#r.r)r\rUrs1rs2rs3s r@test_plot_sizer&s"  12s A c!flR !B  ( ( *B qEQJRUaZ( ( c!flR !B  ( ( *B qEQJRUb[) ) !QBVR !B  ( ( *B qEQJRUaZ( (  9 SV\8999s D33D<cts tdtd}tt |t dtt |t d}|jt k(sJt|djddk\sJtt |td}|jtk(sJt|djddk\sJtt |td}|jtk(sJt|djddk\sJtt5|jdddtt5|jddddtt5|j j#dddy#1swYexYw#1swYHxYw#1swYyxYw)Nr^rUF)rXrNrrz test/path)r2r+r rrrr$rXrrrIr6r.rrNrQrrS)rUrrrs r@test_issue_20113r(s  12s A QE* c!f/e .arB)r}rZrc|Sr8rGrks r@rmz&test_custom_coloring..srBc|Sr8rGrks r@rmz&test_custom_coloring.."s1rBrurvc|dz|dzzSNrYrGrs r@rmz&test_custom_coloring..'q!tad{rB)rc|dz|dzzSr0rGrs r@rmz&test_custom_coloring../r1rB)r rrrrrr rrys r@test_custom_coloringr3ss As AQK(QAQC CFCF{;CFCFq1CFCFs33q63q61E3q63q61;3q63q61=c!a%j#a!e*a!e AJB 24c!a%j#a!e*a!e AJB c!a%j#a!e*a!e AJB  1Q3B QAJ24 1Q3B QAJa8 1Q3B QAJc:rBcts tdtd}t|}t ||ddfd|d}t 5|dj dddy#1swYyxYw)Nr^rUrrdFrr)r2r+r rrr/ get_segmentsrs r@test_deprecated_get_segmentsr64sc  12s A AA QC 58rBA  ! !s A""A+c ts tdtd}t|ddgddggdddgdd d ggd gd d d d ddg|d}t |j j jdk(sJt |j j jdk(sJt |j j jdk(sJt |j j jdk(sJy)Nr^rUrrZ*noner>marker linestyletestrrrWxyrrZrYrVrUy1rvr@widthheightrd)markers annotationsfill rectanglesr\rhrY) r2r+r rrrr  collectionspatcheslinestextsrs r@test_generic_data_seriesrO@s  12s A Qa&1a&)SvNO$F34| 4!A;<R  !A qzz}}(( )Q .. . qzz}}$$ % ** * qzz}}"" #q (( ( qzz}}"" #q (( (rBcts tdtd}tt ||ddfd}t 5ddgddggd d d g|_dddt|jd k(sJt 5d ddg|_ dddt|jdk(sJt 5gdgdd|_ dddt|jdk(sJt 5ddddg|_ dddt|jdk(sJy#1swYxYw#1swYxYw#1swYuxYw#1swYHxYw)Nr^rUrrdFrrrZr8r9r:rYr=r>r?rVrArBrtrvrD) r2r+r rrr/rGrrrHrIrJrs r@3test_deprecated_markers_annotations_rectangles_fillrQSsE  12s A SVab\.A  !T !fq!f-6RS T qyy>Q    !9"(78 9 qyy>Q    !9#<89 qyy>Q    !A%Q?@ A qyy>Q  TT9999AAs0D# D/8D;3 E#D,/D8;EEc ts tdtd}td}tt |dd}t |dj dk(sJt |djdk(sJtt|t ||ddfdd}t |dj dk(sJt |djd k(sJtt|t |||ddfdd}t |dj d k(sJt |djd k(sJtt|dz|dzz|t tf|t tfd }t |djd k(sJt |djd k(sJtt|dz|dzz|t tf|t tfd }t |djd k(sJt |djd k(sJt|t|z|t |z|td |zzdz |dtf|ddtzfd }t |djd k(sJt |djdk(sJy) Nr^rUr_FrvrrrrYrVrt)rh)r2r+r rrr get_pointsrrrrrr get_meshesr"r rUr_rs r@test_back_compatibilityrVgs  12s As A SVeq)A qt !Q && & qt}} 1 $$ $AAAq EQGA qt !Q && & qt}} 1 $$ $s1vs1vq1a)! A qt !Q && & qt}} 1 $$ $s1a4!Q$;!bS"B3|qAA qt !Q && & qt}} 1 $$ $SA1%B3|a"b\QGA qt !Q && & qt}} 1 $$ $!!c!f*a#a&j!c!a%j.1:L Ar Q1R4LA 'A qt !Q && & qt}} 1 $$ $rBc ts tdtd\}}t|dz}t |dt sJ|dj |dzk(sJ|dj|ddfgk(sJ|djddk(sJ|djik(sJt|dzd }t |dt sJ|dj |dzk(sJ|dj|ddfgk(sJ|djdd k(sJ|djik(sJt|dz|d d f}|dj|d d fgk(sJt|dz|d d fd d di}|djdd k(sJ|djd dik(sJt|dz|d z}t |dt sJ|dj |dzk(sJ|dj|ddfgk(sJ|djddk(sJ|djik(sJt |dt sJ|dj |d zk(sJ|dj|ddfgk(sJ|djddk(sJ|djik(sJt|dz|d z|ddf}|dj|ddfgk(sJ|dj|ddfgk(sJt|dz|d z|ddfd di}|dj|ddfgk(sJ|dj|ddfgk(sJ|djd dik(sJ|djd dik(sJt|dz|ddff|d z|d d fd d dif}t |dt sJ|dj |dzk(sJ|dj|ddfgk(sJ|djddk(sJ|djik(sJt |dt sJ|dj |d zk(sJ|dj|d d fgk(sJ|djdd k(sJ|djd dik(sJd}td}t |dt sJt|dj sJ|djddddk(sJ|djddk(sJ|djik(sJt|dd }|djddddk(sJ|djdd k(sJy)Nr^x, yrZrrrdFzx + 1rgrsrYr=colorr,zx**2rvc|Sr8rGts r@rmz%test_plot_arguments..s!rBc|Sr8rGr[s r@rmz%test_plot_arguments..sqrBrrd)r\rur)rur) r2r+r r isinstancer&rranges get_label rendering_kwcallablerUr_rrs r@test_plot_argumentsrfs  12 6?DAq QU A ad1 22 2 Q499A   Q4;;AsB<. (( ( Q4>>% G ++ + Q4   "" " QUGA ad1 22 2 Q499A   Q4;;AsB<. (( ( Q4>>% G ++ + Q4   "" " QUQAJA Q4;;Ar1:, && & QUQAJ#7A Q4>>% F ** * Q4  # .. . QUAqDA ad1 22 2 Q499A   Q4;;AsB<. (( ( Q4>>% G ++ + Q4   "" " ad1 22 2 Q4991   Q4;;AsB<. (( ( Q4>>% F ** * Q4   "" " QUAqD1a)$A Q4;;Aq!9+ %% % Q4;;Aq!9+ %% % QUAqD1a)gs^4A Q4;;Aq!9+ %% % Q4;;Aq!9+ %% % Q4  # .. . Q4  # .. . QAq  A2qz6GS>2 4A ad1 22 2 Q499A   Q4;;Aq!9+ %% % Q4>>% G ++ + Q4   "" " ad1 22 2 Q4991   Q4;;Ar1:, && & Q4>>% F ** * Q4  # .. . A [A ad1 22 2 AaDII   Q4;;q>!"  ** * Q4>>% B && & Q4   "" " Q f%A Q4;;q>!"  (( ( Q4>>% F ** *rBc  ts tdtd\}}t|dz|}t |dt sJ|dj |dz|fk(sJ|dj|ddfgk(sJ|djddk(sJ|djik(sJt|dz||d d fd d d i}|dj |dz|fk(sJ|dj|d d fgk(sJ|djdd k(sJ|djd d ik(sJt|dz|f|d d fd }|dj |dz|fk(sJ|dj|d d fgk(sJ|djdd k(sJ|djik(sJt|dz|f|d z|dzf}|dj |dz|fk(sJ|dj|ddfgk(sJ|djddk(sJ|djik(sJ|dj |d z|dzfk(sJ|dj|ddfgk(sJ|djddk(sJ|djik(sJt|dz|f|d z|dzd f}|dj |dz|fk(sJ|dj|ddfgk(sJ|djddk(sJ|djik(sJ|dj |d z|dzfk(sJ|dj|ddfgk(sJ|djdd k(sJ|djik(sJt|dz|f|d z|dzf|d d f}|dj |dz|fk(sJ|dj|d d fgk(sJ|djddk(sJ|djik(sJ|dj |d z|dzfk(sJ|dj|d d fgk(sJ|djddk(sJ|djik(sJt|dz||d d fdf|d z|dz|ddfdd d if}|dj |dz|fk(sJ|dj|d d fgk(sJ|djddk(sJ|djik(sJ|dj |d z|dzfk(sJ|dj|ddfgk(sJ|djddk(sJ|djd d ik(sJd}d}t||}td|dj DsJ|djddddk(sJd|djdvsJ|djik(sJt||dd }td|dj DsJ|djddddk(sJ|djdd k(sJ|djik(sJy)Nr^rXrZrrrdFrUrsrYr=cmapRedstest1rwrVtest2c|Sr8rGr[s r@rmz0test_plot_parametric_arguments..&1rBc d|zSr0rGr[s r@rmz0test_plot_parametric_arguments..' 1q5rBc32K|]}t|ywr8rd.0r\s r@ z1test_plot_parametric_arguments..).qx{.r^Dummyr\rrYc32K|]}t|ywr8rqrrs r@rtz1test_plot_parametric_arguments..0rurvrrY) r2r+r rr`r'rrarbrcall)rUr_rfxfys r@test_plot_parametric_argumentsr~s$  12 6?DAq Aq!A ad2 33 3 Q499Q "" " Q4;;AsB<. (( ( Q4>>% C '' ' Q4   "" " Aq1b!*f  A Q499Q "" " Q4;;Ar1:, && & Q4>>% F ** * Q4   0 00 0Q QAJ7A Q499Q "" " Q4;;Ar1:, && & Q4>>% F ** * Q4   "" " Q Q!VQUO4A Q499Q "" " Q4;;AsB<. (( ( Q4>>% C '' ' Q4   "" " Q499aQ '' ' Q4;;AsB<. (( ( Q4>>% C '' ' Q4   "" " Q Q!VQUF$;>% C '' ' Q4   "" " Q499aQ '' ' Q4;;AsB<. (( ( Q4>>% F ** * Q4   "" " Q Q!VQUOaQZ@A Q499Q "" " Q4;;Ar1:, && & Q4>>% C '' ' Q4   "" " Q499aQ '' ' Q4;;Ar1:, && & Q4>>% C '' ' Q4   "" "  QAr1:w' aQB Gff-=> @A Q499Q "" " Q4;;Ar1:, && & Q4>>% G ++ + Q4   "" " Q499aQ '' ' Q4;;Ar1:, && & Q4>>% G ++ + Q4   0 00 0 B BBA .AaDII. .. . Q4;;q>!"  ** * adnnU+ ++ + Q4   "" " B V4A .AaDII. .. . Q4;;q>!"  '' ' Q4>>% F ** * Q4   "" "rBc  ts tdtd\}}t|dz|t |}t |dt sJ|dj|dz|t |fk(sJ|dj|ddfgk(sJ|djddk(sJ|djik(sJt|dz|t ||d d fd d d i}t |dt sJ|dj|dz|t |fk(sJ|dj|d d fgk(sJ|djdd k(sJ|djd d ik(sJt|dz|t |f|d d fd }|dj|dz|t |fk(sJ|dj|d d fgk(sJ|djdd k(sJ|djik(sJt|dz|t |f|d zdt|d d if}|dj|dz|t |fk(sJ|dj|ddfgk(sJ|djddk(sJ|djik(sJ|dj|d zdt|fk(sJ|dj|ddfgk(sJ|djddk(sJ|djd d ik(sJt|dz|t |f|d zdt|f}|dj|dz|t |fk(sJ|dj|ddfgk(sJ|djddk(sJ|djik(sJ|dj|d zdt|fk(sJ|dj|ddfgk(sJ|djddk(sJ|djik(sJt|dz|t |f|d zdt||d d fd d d if}|dj|dz|t |fk(sJ|dj|ddfgk(sJ|djddk(sJ|djik(sJ|dj|d zdt|fk(sJ|dj|d d fgk(sJ|djdd k(sJ|djd d ik(sJd}d}d}t|||}td|djDsJ|djddddk(sJd|djdvsJ|djik(sJt|||dd }td|djDsJ|djddddk(sJ|djdd k(sJ|djik(sJy)Nr^rXrZrrrdFrUrsrYr=rhrir_c|Sr8rGr[s r@rmz7test_plot3d_parametric_line_arguments..yrmrBc d|zSr0rGr[s r@rmz7test_plot3d_parametric_line_arguments..zrorBc d|zS)NrVrGr[s r@rmz7test_plot3d_parametric_line_arguments..{rorBc32K|]}t|ywr8rqrrs r@rtz8test_plot3d_parametric_line_arguments..}rurvr^rwrxc32K|]}t|ywr8rqrrs r@rtz8test_plot3d_parametric_line_arguments..rurvrz) r2r+r rrr`r(rrarbrcrr{)rUr_rr|r}fzs r@%test_plot3d_parametric_line_argumentsr6s  12 6?DAq q1uaQ0A ad2 33 3 Q499Q3q6* ** * Q4;;AsB<. (( ( Q4>>% C '' ' Q4   "" " q1uaQ!R  "A ad2 33 3 Q499Q3q6* ** * Q4;;Ar1:, && & Q4>>% F ** * Q4   0 00 0Aq#a&1Ar1:vFA Q499Q3q6* ** * Q4;;Ar1:, && & Q4>>% F ** * Q4   "" "  Q3q6Q!VQA0@A CA Q499Q3q6* ** * Q4;;AsB<. (( ( Q4>>% C '' ' Q4   "" " Q499aCF+ ++ + Q4;;AsB<. (( ( Q4>>% C '' ' Q4   0 00 0 Aq#a&1AFAs1v3FGA Q499Q3q6* ** * Q4;;AsB<. (( ( Q4>>% C '' ' Q4   "" " Q499aCF+ ++ + Q4;;AsB<. (( ( Q4>>% C '' ' Q4   "" "  Q3q6 aCFQAJ0@A CA Q499Q3q6* ** * Q4;;AsB<. (( ( Q4>>% C '' ' Q4   "" " Q499aCF+ ++ + Q4;;Ar1:, && & Q4>>% F ** * Q4   0 00 0 B B Br2r*A .AaDII. .. . Q4;;q>!"  ** * adnnU+ ++ + Q4   "" " r2r;?A .AaDII. .. . Q4;;q>!"  '' ' Q4>>% F ** * Q4   "" "rBc f ts tdtd\}}t||z}t |dt sJ|dj ||zk(sJ|djd|ddfk(s|ddfsJ|djd|ddfk(s|ddfsJ|djddk(sJ|djik(sJt||z|d d fd d d i}t |dt sJ|dj ||zk(sJ|djd|d d fk(sJ|djd|ddfk(sJ|djdd k(sJ|djd d ik(sJt||z|d d f|ddfd }|djd|d d fk(sJ|djd|ddfk(sJt||z||z}|dj ||zk(sJ|djd|ddfk(s|ddfsJ|djd|ddfk(s|ddfsJ|djddk(sJ|djik(sJ|dj ||zk(sJ|djd|ddfk(s|ddfsJ|djd|ddfk(s|ddfsJ|djddk(sJ|djik(sJt||z||z|d d f|ddf}|dj ||zk(sJ|djd|d d fk(sJ|djd|ddfk(sJ|djddk(sJ|djik(sJ|dj ||zk(sJ|djd|d d fk(sJ|djd|ddfk(sJ|djddk(sJ|djik(sJt||z|d d f|ddff||z|ddf|ddfd d d if}|dj ||zk(sJ|djd|d d fk(sJ|djd|ddfk(sJ|djddk(sJ|djik(sJ|dj ||zk(sJ|djd|ddfk(sJ|djd|ddfk(sJ|djdd k(sJ|djd d ik(sJd}t|}t|dj sJ|djddddk(sJ|djddddk(sJ|djddk(sJ|djik(sJt|ddd }t|dj sJ|djddddk(sJ|djddddk(sJ|djdd k(sJ|djik(sJtt|||ddf|ddf}t |dt sJ|dj t||k(sJ|djd|ddfk(sJ|djd|ddfk(sJ|djddk(sJ|djik(sJy)Nr^rXrrrdrZFzx + yrsrYr=rhrirtzx*yrwrVirc ||zSr8rGrys r@rmz4test_plot3d_plot_contour_arguments..s QUrBr^r_)rlrurV)rorsrZ)rurV)rsrZz Min(x, y)) r2r+r rr`r*rrarbrcrdrres r@"test_plot3d_plot_contour_argumentsrs  12 6?DAq q1u A ad4 55 5 Q499A   Q4;;q>ab\ )ab\9 9 Q4;;q>ab\ )ab\9 9 Q4>>% G ++ + Q4   "" " q1uq"aj&66*:;A ad4 55 5 Q499A   Q4;;q>aQZ '' ' Q4;;q>ab\ )) ) Q4>>% F ** * Q4   0 00 0q1uq"aj1b!*f5A Q4;;q>aQZ '' ' Q4;;q>aQZ '' ' q1ua!eA Q499A   Q4;;q>ab\ )ab\9 9 Q4;;q>ab\ )ab\9 9 Q4>>% G ++ + Q4   "" " Q499A   Q4;;q>ab\ )ab\9 9 Q4;;q>ab\ )ab\9 9 Q4>>% E )) ) Q4   "" " q1ua!eaQZ!R4A Q499A   Q4;;q>aQZ '' ' Q4;;q>aQZ '' ' Q4>>% G ++ + Q4   "" " Q499A   Q4;;q>aQZ '' ' Q4;;q>aQZ '' ' Q4>>% E )) ) Q4   "" "  QB QAJ' QB QAJ0@A CA Q499A   Q4;;q>aQZ '' ' Q4;;q>aQZ '' ' Q4>>% G ++ + Q4   "" " Q499A   Q4;;q>aQZ '' ' Q4;;q>aQZ '' ' Q4>>% F ** * Q4   0 00 0 Aq A AaDII   Q4;;q>!"  ** * Q4;;q>!"  ** * Q4>>% B && & Q4   "" " q, f5A AaDII   Q4;;q>!"  (( ( Q4;;q>!"  (( ( Q4>>% F ** * Q4   "" " s1ay1a*q!Rj1A ad4 55 5 Q499Aq !! ! Q4;;q>aBZ '' ' Q4;;q>aBZ '' ' Q4>>% K // / Q4   "" "rBc $ ts tdtd\}}t||zt ||zt ||z}t |dtsJ|dj||zt ||zt ||zfk(sJ|djd|ddfk(s|ddfsJ|djd|ddfk(s|ddfsJ|djddk(sJ|djik(sJt||zt ||zt ||z|d d f|d d fd ddi}t |dtsJ|dj||zt ||zt ||zfk(sJ|djd|d d fk(sJ|djd|d d fk(sJ|djdd k(sJ|djddik(sJt||zt ||zt ||zf||z t ||z t ||z d f}|dj||zt ||zt ||zfk(sJ|djd|ddfk(s|ddfsJ|djd|ddfk(s|ddfsJ|djddk(sJ|djik(sJ|dj||z t ||z t ||z fk(sJ|djd|ddfk(s|ddfsJ|djd|ddfk(s|ddfsJ|djdd k(sJ|djik(sJt||zt ||zt ||z|d d fd f||z t ||z t ||z |ddf|d d fdddif}|dj||zt ||zt ||zfk(sJ|djd|d d fk(sJ|djd|ddfk(sJ|djdd k(sJ|djik(sJ|dj||z t ||z t ||z fk(sJ|djd|ddfk(sJ|djd|d d fk(sJ|djddk(sJ|djddik(sJtddddd}td|djDsJ|djddddk(sJ|djddddk(sJ|djddk(sJ|djik(sJtdddddfdd d!d"d#d f}td$|djDsJ|djddddk(sJ|djddddk(sJ|djddk(sJ|djik(sJtd%|djDsJ|djdddd&k(sJ|djdddd'k(sJ|djdd k(sJ|djik(sJy)(Nr^rXrrrdrZFz(x + y, cos(x + y), sin(x + y))rsrYrrtr=rhrirwrVrkc|Sr8rGuvs r@rmz:test_plot3d_parametric_surface_arguments..(sQrBc|Sr8rGrs r@rmz:test_plot3d_parametric_surface_arguments..(rrBc ||zSr8rGrs r@rmz:test_plot3d_parametric_surface_arguments..(s QUrB)rrrY)rrwrtc32K|]}t|ywr8rqrrs r@rtz;test_plot3d_parametric_surface_arguments..*rurvrz)rwrtr_c|Sr8rGrs r@rmz:test_plot3d_parametric_surface_arguments..3arBc|Sr8rGrs r@rmz:test_plot3d_parametric_surface_arguments..3r+rBc ||zSr8rGrs r@rmz:test_plot3d_parametric_surface_arguments..3 a!erBc|Sr8rGrs r@rmz:test_plot3d_parametric_surface_arguments..5rrBc|Sr8rGrs r@rmz:test_plot3d_parametric_surface_arguments..5r+rBc ||z Sr8rGrs r@rmz:test_plot3d_parametric_surface_arguments..5rrB)rrsrV)rrrvc32K|]}t|ywr8rqrrs r@rtz;test_plot3d_parametric_surface_arguments..7rurvc32K|]}t|ywr8rqrrs r@rtz;test_plot3d_parametric_surface_arguments..<rurv)rsrV)rrv) r2r+r r rrr`r)rrarbrcr{rUs r@(test_plot3d_parametric_surface_argumentsrs{  12 6?DAq "!a%QUSQZ@A ad3 44 4 Q499QAE CAJ7 77 7 Q4;;q>ab\ )ab\9 9 Q4;;q>ab\ )ab\9 9 Q4>>% $E EE E Q4   "" " "!a%QUSQZ B QAJ(8 :A ad3 44 4 Q499QAE CAJ7 77 7 Q4;;q>aQZ '' ' Q4;;q>aQZ '' ' Q4>>% F ** * Q4   0 00 0 " QAE CAJ' QAE CAJ/ 1A Q499QAE CAJ7 77 7 Q4;;q>ab\ )ab\9 9 Q4;;q>ab\ )ab\9 9 Q4>>% $E EE E Q4   "" " Q499QAE CAJ7 77 7 Q4;;q>ab\ )ab\9 9 Q4;;q>ab\ )ab\9 9 Q4>>% F ** * Q4   "" " " QAE CAJB F; QAE CAJB QAJ ff% ' (A Q499QAE CAJ7 77 7 Q4;;q>aQZ '' ' Q4;;q>ab\ )) ) Q4>>% F ** * Q4   "" " Q499QAE CAJ7 77 7 Q4;;q>aQZ '' ' Q4;;q>aQZ '' ' Q4>>% G ++ + Q4   0 00 0 "(:\ #A .AaDII. .. . Q4;;q>!"  (( ( Q4;;q>!"  (( ( Q4>>% B && & Q4   "" " " );\ # );lF , -A .AaDII. .. . Q4;;q>!"  '' ' Q4;;q>!"  (( ( Q4>>% B && & Q4   "" " .AaDII. .. . Q4;;q>!"  (( ( Q4;;q>!"  (( ( Q4>>% F ** * Q4   "" "rB)lrtempfilerpytestsympy.concrete.summationsrsympy.core.numbersrrrsympy.core.relationalrsympy.core.symbolr r &sympy.functions.elementary.exponentialr r r r(sympy.functions.elementary.miscellaneousrr$sympy.functions.elementary.piecewiser(sympy.functions.elementary.trigonometricrrrsympy.functions.special.hyperrsympy.integrals.integralsrsympy.logic.boolalgrsympy.core.singletonrsympy.core.sympifyrsympy.externalrsympy.plotting.plotrrrrrr r!r"r#r$r%sympy.plotting.seriesr&r'r(r)r*sympy.testing.pytestr+r,r-r.r/sympy.utilitiesr0rsympy.utilities.exceptionsr1 RuntimeErrorr2r6rIr[mark parametrizerrrrrrrrrrrrrrrrr rrr&r(r3r6rOrQrVrfr~rrrrGrBr@rs> ' )**$-RRF:?81.#"&(HH77a`16 W\OE ## T . dE]3N4NbdE]3B4BJdE]3O4OddV,-&dE]34BdE]3$34$3NdE]3'4'TdE]34(dE]3#24#2L 2dE]3 -4 -dE]3 4 dE]3)4)dE]3 )4 )bc-d-"dE]3 )4 )dE]3)4).dE]3  4  dE]3 !4 !FdE]3949.6;6dE]34dE]3)4)$(%8T+nY#xQ#h_#DT#rB