
    4iw                        S r SSKrSSKrSSKrSSKJs  Jr  SSK	J
r
JrJrJrJrJrJrJrJr  SSKJr  SSKJrJrJrJrJr  \R8                  " S5      r\R8                  " S5      r\R8                  " S5      rSSK r SSK!J"r"  \RF                  S	\
4S
 j5       r$\RJ                  " S5      S 5       r&S r'\RP                  RS                  S\RT                  RV                  5      \RP                  RS                  S\
" \RX                  " S5      R[                  SS5      5      \" \." S5      5      /5      \RP                  RS                  S\" \." S5      5      \" SSS9\" SSS9/5      S 5       5       5       r/ " S S5      r0 " S S5      r1\RF                  S 5       r2\RF                  S	\
4S j5       r3S r4S r5\RP                  RS                  SSS /S!S"/S"S//5      S# 5       r6\RP                  RS                  S/ S$Q/ S%Q/ S&Q/5      S' 5       r7\RP                  RS                  S(S)S*/S+S,/S-S./S/S0//5      S1 5       r8\RP                  RS                  S(S$/S2/S3/S4//5      S5 5       r9S6 r:S7 r;S8 r<S9 r=g):z"Test cases for misc plot functions    N)		DataFrameIndexSeries	Timestamp
date_rangeinterval_rangeperiod_rangeplottingread_csv)_check_colors_check_legend_labels_check_plot_works_check_text_labels_check_ticks_props
matplotlibzmatplotlib.pyplotzmatplotlib.cmget_standard_colorsreturnc                 *    [        U " SSSS5      5      $ )z"
The iris dataset as a DataFrame.
iodatacsvziris.csv)r   )datapaths    a/var/www/html/dynamic-report/venv/lib/python3.13/site-packages/pandas/tests/plotting/test_misc.pyirisr   '   s    
 HT65*=>>    c                      [        SSS/05      n [        R                  " [        SS9   U R	                  5         S S S 5        g ! , (       d  f       g = f)NA      z#matplotlib is required for plottingmatch)r   pytestraisesImportErrorplotdfs    r   test_import_error_messager)   /   s;     
C!Q=	!B	{*O	P
	 
Q	P	Ps   A
Ac            	      H   [         R                  R                  R                  n Sn[        R
                  " [        US9   U " S/ / 0 S9  S S S 5        Sn[        R
                  " [        US9   U " S[        [        S9SS /0 S9  S S S 5        U " S[        5       S/S	S
SS.S9u  p#pEUS:X  d   eUS	:X  d   eUS
:X  d   eUSS0:X  d   eU " S[        [        S9/ 0 S9u  p#pEUb   eUb   eUS:X  d   e[        U5      S:X  d   eg ! , (       d  f       N= f! , (       d  f       N= f)Nz@Called plot accessor for type list, expected Series or DataFramer!    )backend_namer   argskwargsz.should not be called with positional argumentsdtypelinexybarF)r3   kindgridr6   zpandas.plotting._matplotlib   )r
   _corePlotAccessor_get_call_argsr#   r$   	TypeErrorr   objectr   len)funcmsgr2   r3   r5   r.   s         r   test_get_accessor_argsr@   8   s3   >>&&55D
LC	y	,"2Br: 
- ;C	y	,"6#7vtnUWX 
- [U%7	A$ 8O88O85==fe_$$$2&!	A$ 99996>>v;"7 
-	, 
-	,s    
D-D
D
D!r5   r            index
2020-01-01periodsc                    [         R                  5       u  p4X!l        0 nU S;   a3  [        U[        5      (       a  [
        R                  " U  S35        SSS.nUR                  " SXS.UD6  UR                  [        R                  5        g )N)hexbinscatterpiez not supported with Seriesr   r   )r2   r3   )r5   ax )pltsubplotsrD   
isinstancer   r#   skipr&   savefigosdevnull)r5   r   rD   figrL   r.   s         r   test_savefigrV   Z   ss     llnGCJF++dF##KK4& :;<q!II)4)&)KK

r   c                   l    \ rS rSrS r\R                  R                  S0 SS0/5      S 5       rS r	Sr
g	)
TestSeriesPlotsr   c                    [        [        R                  " S[        R                  S9[	        SSS9SS9n[
        R                  " S 5         [        [        R                  US9  [        [        R                  UR                  S9  [        R                  " USS	9nS S S 5        [        WS/S
9  g ! , (       d  f       N= f)N
   r/   rE   rF   tsrD   name)seriesTest)label)labels)r   nparangefloat64r   tmassert_produces_warningr   r
   autocorrelation_plotvaluesr   )selfserrL   s      r   test_autocorrelation_plot)TestSeriesPlots.test_autocorrelation_plots   s    IIb

+\26
 ''-h;;CHh;;CJJO..s&AB	 .
 	R1 .-s   AB//
B=r.   lagrB   c                     [        [        R                  " S[        R                  S9[	        SSS9SS9n[        [        R                  4SU0UD6  g )Nr[   r/   rE   rF   r\   r]   r_   )r   rc   rd   re   r   r   r
   lag_plot)rj   r.   rk   s      r   test_lag_plotTestSeriesPlots.test_lag_plot   sE    IIb

+\26

 	(++BCB6Br   c                     [        [        R                  " S[        R                  S9[	        SSS9SS9n[        [        R                  USS9  g )Nr[   r/   rE   rF   r\   r]   )r_   size)r   rc   rd   re   r   r   r
   bootstrap_plot)rj   rk   s     r   test_bootstrap_plot#TestSeriesPlots.test_bootstrap_plot   s?    IIb

+\26

 	(11#BGr   rM   N)__name__
__module____qualname____firstlineno__rl   r#   markparametrizerq   rv   __static_attributes__rM   r   r   rX   rX   r   s=    2 [[XUAJ'78C 9CHr   rX   c                      \ rS rSr\R
                  R                  SSS/5      S 5       r\R
                  R                  SSS/5      S 5       r\R
                  R                  S 5       r
\R
                  R                  \R
                  R                  SS	/ S
Q/5      \R
                  R                  SS\" \R                  R                  S5      R                  S5      \R                  R                  S5      R                  S5      \R                  R                  S5      R                  S5      S/S-  S.5      /5      S 5       5       5       r\R
                  R                  \R
                  R                  SS\" \R                  R                  S5      R                  S5      \R                  R                  S5      R                  S5      \R                  R                  S5      R                  S5      S/S-  S.5      /5      S 5       5       r\R
                  R                  S 5       r\R
                  R                  \R
                  R                  SS	/ S
Q/5      S 5       5       r\R
                  R                  S 5       r\R
                  R                  S 5       r\R
                  R                  S 5       r\R
                  R/                  S5      S 5       rS r\R
                  R                  SS	/ S
Q/5      S 5       rS rS rS rS  rS! rS" r S# r!S$ r"S% r#S& r$S' r%S( r&\R
                  R                  S)S*S+/5      S, 5       r'S- r(S. r)S/ r*S0 r+S1 r,S2 r-S3 r.S4 r/S5r0g6)7TestDataFramePlots   	pass_axisFTc                 
   [         R                  " S5        [        R                  nS nU(       a"  [        R
                  R                  SS5      u  pC[        [        R                  R                  S5      R                  S5      5      n[        R                  " [        SS9   [        UUSUS9nS S S 5        WS	   S	   R                   R#                  5       n/ S
Qn[%        Xx5        ['        USSSS	S9  g ! , (       d  f       NK= f)NscipyrC   r    r[   rC   Fcheck_stacklevel皙?framerange_paddingrL   r   )z-2z-10   Z   
xlabelsizexrot
ylabelsizeyrotr#   importorskipr
   scatter_matrixmplpyplotrO   r   rc   randomdefault_rngstandard_normalrf   rg   UserWarningr   yaxisget_majorticklabelsr   r   	rj   r   r   rL   _r(   axesaxes0_labelsexpecteds	            r   test_scatter_matrix_axis+TestDataFramePlots.test_scatter_matrix_axis   s    G$!00JJ''1-EAryy,,Q/??HI ''eL$!	D M Awqz'';;=$<24AB11M MLs   "C44
Dc                 &   [         R                  " S5        [        R                  nS nU(       a"  [        R
                  R                  SS5      u  pC[        [        R                  R                  S5      R                  S5      5      nUS   S-
  S-  US'   [        R                  " [        SS9   [        UUS	US
9nS S S 5        WS   S   R                   R#                  5       n/ SQn[%        Xx5        ['        USSSSS9  g ! , (       d  f       NK= f)Nr   rC      r   r   r    Fr   r   r   )z-1.25z-1.0z-0.75z-0.5r   r   r   r   r   s	            r    test_scatter_matrix_axis_smaller3TestDataFramePlots.test_scatter_matrix_axis_smaller   s    G$!00JJ''1-EAryy,,R0@@IJAa1 ''eL$!	D M Awqz'';;=5<24AB11M MLs   0D
Dc                     [         R                  " S 5         [        [        R                  USS9  S S S 5        g ! , (       d  f       g = fNNamer   class_column)rf   rg   r   r
   andrews_curvesrj   r   s     r   test_andrews_curves_no_warning1TestDataFramePlots.test_andrews_curves_no_warning   s1     ''-h55TPVW .--	   :
A
linecolors)z#556270z#4ECDC4z#C7F464)
dodgerblue
aquamarineseagreenr(   r   r    r[   r   r   BCr   c                     [        U[        5      (       a  UR                  U5      n[        [        R
                  USUS9n[        UR                  5       S S X2S   S S S9  g Nr   r   r   colorr[   r   mapping)rP   strgetfixturevaluer   r
   r   r   	get_lines)rj   requestr(   r   rL   s        r   test_andrews_curves_linecolors1TestDataFramePlots.test_andrews_curves_linecolors   s`    . b#((,B##2F*
 	LLN3BJ6
3B	
r   c                 h   [        U[        5      (       a  UR                  U5      n[        R                  " SSUS   R                  5       5       Vs/ s H  n[        R                  U5      PM     nn[        [        R                  USUS9n[        UR                  5       S S XBS   S S S9  g s  snf )Nr   r   r   r   r[   r   )rP   r   r   rc   linspacenuniquecmjetr   r
   r   r   r   )rj   r   r(   ncmapsrL   s         r   test_andrews_curves_cmap+TestDataFramePlots.test_andrews_curves_cmap   s      b#((,B$&KK1bj6H6H6J$KL$Kq$KL##2F%
 	bllnSb)eZPSQS_U	 Ms   B/c                     / SQn[        / SQ/ SQ/ SQUS.5      n[        R                  " USUS9nUR                  5       u  pE[	        XAS9  g Nbgrr   r    rC   r   r   r   )r   )r   r
   r   get_legend_handles_labelsr   rj   colorsr(   rL   handlesr   s         r   test_andrews_curves_handle-TestDataFramePlots.test_andrews_curves_handle  sG     YYYPVWX$$Rv>113
g1r   r   c                 ~    Un[        [        R                  USUS9n[        UR	                  5       S S X#S   S S S9  g r   )r   r
   parallel_coordinatesr   r   )rj   r   r   r(   rL   s        r    test_parallel_coordinates_colors3TestDataFramePlots.test_parallel_coordinates_colors  sH     ))&PU
 	bllnSb)eZPSQS_Ur   c                 P   Un[        [        R                  US[        R                  S9n[
        R                  " SSUS   R                  5       5       Vs/ s H"  n[        R                  R	                  U5      PM$     nn[        UR                  5       S S XRS   S S S9  g s  snf )Nr   r   r   colormapr   r   r[   r   )r   r
   r   r   r   rc   r   r   r   r   r   )rj   r   r(   rL   r   r   s         r   test_parallel_coordinates_cmap1TestDataFramePlots.test_parallel_coordinates_cmap  s    ))VV	
 )+Aq"V*:L:L:N(OP(O1A(OPbllnSb)eZPSQS_U Qs   )B#c                 (   Un[        [        R                  USS9n[        UR	                  5       5      n[        UR
                  R                  5       5      n[        [        R                  USSS9n[        UR	                  5       5      XE-
  :X  d   eg )Nr   r   F)r   r   axvlines)r   r
   r   r=   r   xaxisget_ticklabels)rj   r   r(   rL   nlinesnxtickss         r   #test_parallel_coordinates_line_diff6TestDataFramePlots.test_parallel_coordinates_line_diff&  s    ))&
 R\\^$bhh--/0))&SX
 2<<>"v'7888r   c                     Un/ SQn[        / SQ/ SQ/ SQUS.5      n[        R                  " USUS9nUR                  5       u  pV[	        XSS9  g r   )r   r
   r   r   r   )rj   r   r(   r   rL   r   r   s          r   !test_parallel_coordinates_handles4TestDataFramePlots.test_parallel_coordinates_handles5  sL     YYYPVWX**2vVD113
g1r   z$ignore:Attempting to set:UserWarningc                 \   [        [        [        S5      5      [        S5       Vs/ s H  nSPM     sn[        S5       Vs/ s H  nSPM     sn-   [        S5       Vs/ s H  nSPM     sn-   S.5      n[        R                  " USSS	9nUR                  5       u  pE[        U Vs/ s H  ofR                  5       PM     snUSS
9n[        US S9n[        [        USS 5      [        USS  5      SS
9n	U	 H  u  pU
S   US   :  a  U
S   US   :  a  M   e   g s  snf s  snf s  snf s  snf )N   r[   r    rC   r   )featclassr   T)sort_labelsstrictc                     U S   $ )Nr   rM   )r2   s    r   <lambda>QTestDataFramePlots.test_parallel_coordinates_with_sorted_labels.<locals>.<lambda>O  s	    aPQdr   )keyr   )	r   listranger
   r   r   zip	get_colorsorted)rj   r   r(   rL   	polylinesrb   polylinecolor_label_tuplesordered_color_label_tuplesprev_next_tupelsprevnxts               r   ,test_parallel_coordinates_with_sorted_labels?TestDataFramePlots.test_parallel_coordinates_with_sorted_labels?  s:    U2Y%*2Y/Y!Y/#Bi(i1i()#Bi(i1i()
 **2wDI88:	 2;<)h!)<fT
 &,,>N%S"+Ab12+AB/0

 *ID7SV#Q#a&(888 *! 0(( =s   D
DD$&D)c                     [         R                  " S 5         [        [        R                  USS9  S S S 5        g ! , (       d  f       g = fr   )rf   rg   r   r
   radvizr   s     r   test_radviz_no_warning)TestDataFramePlots.test_radviz_no_warningY  s,    ''-hooTO .--r   c                     Un[        [        R                  USUS9nUR                  S S  Vs/ s H  oUR	                  5       S:w  d  M  UPM     nn[        US S X#S   S S S9  g s  snf )Nr   r      r+   r[   
facecolorsr   )r   r
   r  patches	get_labelr   )rj   r   r   r(   rL   pr  s          r   test_radviz_color$TestDataFramePlots.test_radviz_color^  sk    
 OO2F%
 !jj"oEo"1D1oEgcrluj"oN Fs   A%	A%c                    Un[        [        R                  US[        R                  S9n[
        R                  " SSUS   R                  5       5       Vs/ s H"  n[        R                  R	                  U5      PM$     nnUR                  S S  Vs/ s H  ofR                  5       S:w  d  M  UPM     nn[        XuUS   S S S9  g s  snf s  snf )	Nr   r   r   r   r  r+   r[   r  )r   r
   r  r   r   rc   r   r   r   r  r  r   )rj   r   r(   rL   r   r   r  r  s           r   test_radviz_color_cmap)TestDataFramePlots.test_radviz_color_cmapk  s    OO2FRVV
 )+Aq"V*:L:L:N(OP(O1A(OP jj"oEo"1D1oEgFCRI QEs   )CC-Cc                     / SQ/ SQ/ SQ/n[        / SQ/ SQ/ SQ/ SQS.5      n[        R                  " US	US
9nUR                  5       u  pE[	        XAS9  g )N)        r        ?r  )r        ?r  r  )r  r  r  r  r   )r    r   rC   )rC   r    r   r   r   r   r   )r  )r   r
   r  r   r   r   s         r   test_radviz_colors_handles-TestDataFramePlots.test_radviz_colors_handlest  sR    &(<>RS))_U
 __Rv6113
g1r   c                     UR                  SSS9R                  5       n[        UR                  5      nUR	                  SUS9nU Vs/ s H  oUR                  5       PM     snU:X  d   eg s  snf )Nr   r   axisTrO   titledropheadr   columnsr&   	get_title)rj   r   r(   r&  r&   r  s         r   test_subplot_titles&TestDataFramePlots.test_subplot_titles}  sc    YYvAY&++-RZZ  wwEw2'+,t!t,555,s   A+c                     UR                  SSS9R                  5       n[        UR                  5      nSn[        R
                  " [        US9   UR                  S/ UQSPS9  S S S 5        g ! , (       d  f       g = f)	Nr   r   r#  jThe length of `title` must equal the number of columns if using `title` of type `list` and `subplots=True`r!   Tzkittens > puppiesr%  r(  r)  r   r*  r#   r$   
ValueErrorr&   rj   r   r(   r&  r?   s        r   test_subplot_titles_too_much/TestDataFramePlots.test_subplot_titles_too_much  sm    YYvAY&++-RZZ ? 	 ]]:S1GGT)F5)F2E)FGG 211s   A--
A;c                     UR                  SSS9R                  5       n[        UR                  5      nSn[        R
                  " [        US9   UR                  SUS S S9  S S S 5        g ! , (       d  f       g = f)	Nr   r   r#  r/  r!   Tr    r%  r0  r2  s        r   test_subplot_titles_too_little1TestDataFramePlots.test_subplot_titles_too_little  sg    YYvAY&++-RZZ ? 	
 ]]:S1GGTrG3 211s   A,,
A:c                     UR                  SSS9R                  5       n[        UR                  5      nSn[        R
                  " [        US9   UR                  SUS9  S S S 5        g ! , (       d  f       g = f)Nr   r   r#  zNUsing `title` of type `list` is not supported unless `subplots=True` is passedr!   Fr%  r0  r2  s        r   "test_subplot_titles_subplots_false5TestDataFramePlots.test_subplot_titles_subplots_false  sa    YYvAY&++-RZZ ( 	 ]]:S1GGU%G0 211s   A))
A7c                 ,   UR                  SSS9R                  5       n[        UR                  5      nUR                  SSS9R	                  SSUS S S9nU VVs/ s H  oU  H  ofR                  5       PM     M     nnnU/ US S	 QS
P:X  d   eg s  snnf )Nr   r   r#  
SepalWidthTr    r    r   )rO   layoutr&  rC   r+   r'  )rj   r   r(   r&  r&   sublistrL   
title_lists           r   )test_subplot_titles_numeric_square_layout<TestDataFramePlots.test_subplot_titles_numeric_square_layout  s    YYvAY&++-RZZ ww|!w,11&cr
 2 
 59KD7Rlln7nD
K-uRay-"---- Ls   "Bc                 `   [        [        R                  " S5      5      n[        R                  " US5        [        R
                  R                  S 5      R                  5       n[        R                  " US5        [        R
                  R                  S 5      R                  5       nX#:w  d   eg )N)r[   r[   r   )r   rc   zerosr
   r   r   r   )rj   r(   rand1rand2s       r   $test_get_standard_colors_random_seed7TestDataFramePlots.test_get_standard_colors_random_seed  s{    rxx)* 	%%b!,		%%d+224%%b!,		%%d+224~~r   c                 :    [        SSS9n[        SSS9nX:X  d   eg )Nr   r   
color_typer   )rj   color1color2s      r   $test_get_standard_colors_consistency7TestDataFramePlots.test_get_standard_colors_consistency  s(     %Q8<$Q8<r   c                     [        SSS9n[        SSS9n[        SSS9n[        U5      S:X  d   e[        U5      S:X  d   e[        U5      S:X  d   eg )Nr   defaultrJ  	   r  )r   r=   )rj   rL  rM  color3s       r   +test_get_standard_colors_default_num_colors>TestDataFramePlots.test_get_standard_colors_default_num_colors  s\    $Q9=$Q9=$RI>6{a6{a6{b   r   c           	      J  ^ [        / SQ/ SQ/ SQ/ SQ/ SQ/ SQS.5      nUR                  R                  5       R                  R	                  5       nUR                  5       SS	  Vs/ s H  o3R                  5       PM     snm[        U4S
 jT 5       5      (       d   eg s  snf )N)z
2017-02-03z
2017-03-03z
2017-01-01)zAlice Andersz	Bob BakerzCharlie Chaplin)gzGag\($@g     L@)i  ix	     )  i  i	  )4   rX      )zaccount-startclientbalancezdb-idzproxy-idrankr   rC   c              3   2   >#    U  H  oTS    :H  v   M     g7f)r   NrM   ).0r   r   s     r   	<genexpr><TestDataFramePlots.test_plot_single_color.<locals>.<genexpr>  s     :6%F1I%6s   )r   r[  value_countsr&   r4   get_childrenget_facecolorall)rj   r(   rL   rectr   s       @r   test_plot_single_color)TestDataFramePlots.test_plot_single_color  s    !KJ6*-%	
 YY##%**..035??3DQq3IJ3I4$$&3IJ:6::::: Ks   'B c                 H   [         R                  R                  [        S5      5      n[	        SUS9n[        U5      [        U5      :X  d   e[        [        R                  R                  S5      R                  S5      [        S5      S9n[         R                  R                  [        R                  " SSS	5      5      nUR                  R                  R                  S
US9nUR                   S   R#                  5       UR                   S   R#                  5       :X  d   eg )NrB   r   r   r    )0      ABCDr*  r      )rn     )figsizer      )r   r   gnuplotr   r   r=   r   rc   r   r   r   r   r   r   r&   r4   r  rd  )rj   color_beforecolor_afterr(   
color_listr  s         r   %test_get_standard_colors_no_appending8TestDataFramePlots.test_get_standard_colors_no_appending  s    
 vv~~eAh/)!<@;3|#4444II!!!$44W=tF|
 VV^^BKK1b$9:
DDIIMM'M<yy|))+qyy}/J/J/LLLLr   r5   r4   r1   c                   ^ SS/nSS/m[        [        R                  R                  S5      R                  S5      US9nSSS.nUR	                  XS	9nUS
:X  a7  UR                  5       SSS2    Vs/ s H  ofR                  5       SS PM     nnO0UR                  5       SS  Vs/ s H  ofR                  5       PM     nn[        U4S j[        U5       5       5      (       d   eg s  snf s  snf )Nar   )r  gQ?g333333?)g333333?ffffff?rz  r    r=  rm  )r   ry  )r5   r   r4   r   rC   r   c              3   8   >#    U  H  u  pUTU   :H  v   M     g 7fNrM   )r_  rD   r   r   s      r   r`  ;TestDataFramePlots.test_dictionary_color.<locals>.<genexpr>  s     R@Q5HUO+@Qs   )r   rc   r   r   r&   rc  rd  r   r  re  	enumerate)	rj   r5   
data_filesdf1	dic_colorrL   rf  r   r   s	           @r   test_dictionary_color(TestDataFramePlots.test_dictionary_color  s     3Z
$o6		--a077?T)0@A	XX4X15==?__=NqQRSTu=UV=UT((*1R0=UFVF35<<>!A3FG3F4nn&3FFGR	&@QRRRRR WGs   2C'&C,c           	      N   [         R                  R                  SSS5      [         R                  R                  SSS5      /n[        SSS/0[	        SS/5      S9nUR
                  R                  5       n[        S [        UR                  5       US	S
9 5       5      (       d   eg )Nr   r   r   Totalry  r    rD   c              3   h   #    U  H(  u  pUR                  5       UR                  5       :H  v   M*     g 7fr|  get_textr_  ry  r   s      r   r`  3TestDataFramePlots.test_bar_plot.<locals>.<genexpr>  s*      
N ZZ\QZZ\)N   02Tr   )
r   textTextr   r   r&   r4   re  r   get_xticklabels)rj   r   r(   plot_bars       r   test_bar_plot TestDataFramePlots.test_bar_plot  s     HHMM!Q,chhmmAq'.JKaV G%	
 77;;= 
H446N
 
 
 	
 
r   c           	      B   [        SSS.SSS./5      nUR                  R                  SS S9n[        R                  R                  SSS5      [        R                  R                  SSS5      /n[        S	 [        UR                  5       US
S9 5       5      (       d   eg )Nr   r   )wordvalue	knowledger    r  )r2   legend1c              3   h   #    U  H(  u  pUR                  5       UR                  5       :H  v   M*     g 7fr|  r  )r_  actualr   s      r   r`  PTestDataFramePlots.test_barh_plot_labels_mixed_integer_string.<locals>.<genexpr>  s3      
%  OO!2!2!44%r  Tr   )	r   r&   barhr   r  r  re  r   get_yticklabels)rj   r(   	plot_barhexpected_yticklabelss       r   *test_barh_plot_labels_mixed_integer_string=TestDataFramePlots.test_barh_plot_labels_mixed_integer_string  s     Q/+PQ1RSTGGLL6$L7	HHMM!Q$HHMM!Q, 
  
$'))+-A$%
 
 
 	
 
r   c                 $   [         R                  R                  R                  n[        R
                  R                  5       nUR                  SS5      nUR                  SUS   S   S9US   S'   UR                  SUS   S   S9US   S'   US   S   R                  5         US   S   R                  5         U" US   S   S5      (       d   eU" US   S   S5      (       a   eU" US   S   S5      (       d   eU" US   S	   S5      (       a   eg )
Nr    rk     r   r   sharex   r2   rC   )
r
   _matplotlibtools_has_externally_shared_axisr   r   figurerO   add_subplottwinxrj   r>   rU   plotss       r   &test_has_externally_shared_axis_x_axis9TestDataFramePlots.test_has_externally_shared_axis_x_axis$      ##))EEjj!Q" ooc%(1+o>aooc%(1+o>a 	aa E!HQK%%%%aS))))E!HQK%%%%aS)))))r   c                 $   [         R                  R                  R                  n[        R
                  R                  5       nUR                  SS5      nUR                  SUS   S   S9US   S'   UR                  SUS   S   S9US   S'   US   S   R                  5         US   S   R                  5         U" US   S   S5      (       d   eU" US   S   S5      (       a   eU" US   S   S5      (       d   eU" US	   S   S5      (       a   eg )
Nrk  r    A  r   r   shareyiE  r3   rC   )
r
   r  r  r  r   r   r  rO   r  twinyr  s       r   &test_has_externally_shared_axis_y_axis9TestDataFramePlots.test_has_externally_shared_axis_y_axis=  r  r   c                 l   [         R                  R                  R                  n[        R
                  R                  5       nUR                  SS5      nUR                  SUS   S   S9US   S'   Sn[        R                  " [        US9   U" US   S   S	5        S S S 5        g ! , (       d  f       g = f)
Nrk  r    r  r   r   r  z&needs 'x' or 'y' as a second parameterr!   z)r
   r  r  r  r   r   r  rO   r  r#   r$   r1  )rj   r>   rU   r  r?   s        r   4test_has_externally_shared_axis_invalid_compare_axisGTestDataFramePlots.test_has_externally_shared_axis_invalid_compare_axisV  s     ##))EEjj!Q" ooc%(1+o>a 7]]:S1q!c" 211s   B%%
B3c                    [        [        R                  R                  S5      R	                  S5      [        R                  R                  S5      R	                  S5      S.5      n[
        R                  R                  5       nUR                  SS5      nUR                  SUS   S   S9US   S'   UR                  S	US   S   S9US   S'   US   S   R                  5       nUS   S   R                  5       nUS
   R                  US   S   SS9R                  S5        US
   R                  US   S   S9  US
   R                  US   S   SS9R                  S5        US
   R                  US   S   S9  US
   R                  US   S   SS9R                  S5        US
   R                  US   S   S9  US   R                  USS9  US   R                  USS9  US   S   R                  R                  5       R                  5       (       a   eUS   S   R                  R                  5       R                  5       (       d   eUS   S   R                  R                  5       R                  5       (       a   eg )Nr    r[   )ry  r   rC   r  r   r   r  r  ry  zExternal share only)rL   r&  z"this label should never be visible)rL   zInternal share (twin) onlyz#this label should always be visibleBothr   green)rL   r   yellow)r   rc   r   r   r   r   r   r  rO   r  r  r&   
set_xlabelr   r  get_visible)rj   r(   rU   r  twin_ax1twin_ax2s         r   test_externally_shared_axes.TestDataFramePlots.test_externally_shared_axesg  sl    YY**1-==bAYY**1-==bA
 jj!Q" ooc%(1+o>aooc%(1+o>a 8A;$$&8A;$$& 	3a+@ALL0	
 	3a$
3a+GHSS1	
 	3a$
3a62==0	
 	3a$ 	30
318A;$$..0<<>>>>Qx{  **,88::::8A;$$..0<<>>>>>r   c                     [        S/[        S5      /S9n[        UR                  5        [	        SS05      n[        UR                  R
                  5        g )Nr  z2022-02-22 22:22:22r  r   )r   r   r   r&   r   r4   )rj   r(   ss      r   -test_plot_bar_axis_units_timestamp_conversion@TestDataFramePlots.test_plot_bar_axis_units_timestamp_conversion  sK     E234
 	"''"C:!&&**%r   c           	         [         R                  R                  SSS5      [         R                  R                  SSS5      /n[        SS/[	        SSSS9/S9n[        UR                  R                  5        [        S	 [        UR                  R                  5       R                  5       US
S9 5       5      (       d   eg )Nr   z	([0, 1],)r   z	([1, 2],)r    both)closedr  c              3   h   #    U  H(  u  pUR                  5       UR                  5       :H  v   M*     g 7fr|  r  r  s      r   r`  FTestDataFramePlots.test_bar_plt_xaxis_intervalrange.<locals>.<genexpr>  s*      
R ZZ\QZZ\)Rr  Tr   )r   r  r  r   r   r   r&   r4   re  r   r  )rj   r   r  s      r    test_bar_plt_xaxis_intervalrange3TestDataFramePlots.test_bar_plt_xaxis_intervalrange  s     HHMM!Q4chhmmAq+6VWF!!Qv67
 	!&&**% 
AFFJJL88:HTR
 
 
 	
 
r   rM   N)1rx   ry   rz   r{   r#   r|   r}   r   r   slowr   r   rc   r   r   r   r   r   r   r   r   r   r   filterwarningsr
  r  r  r  r   r,  r3  r6  r9  rA  rG  rN  rT  rg  rv  r  r  r  r  r  r  r  r  r  r~   rM   r   r   r   r      s   [[[5$-8N 9N0 [[[5$-8N 9N0 [[X X
 [[[[-4	
 [[..q1AA"E..q1AA"E..q1AA"E EBJ	
	

 ,
 [[[[..q1AA"E..q1AA"E..q1AA"E EBJ	
	
V V [[2 2 [[[[	*,TUV	 
V [[
V 
V [[9 9 [[2 2 [[ FG9 H92P
 [[	*,TUO	OJ26
H
4
1	.	 !; M" [[VeV_5S 6S"
"
 *2*2#".?`
&
r   r   c                  b    [         R                  R                  S5      R                  SSS5      $ )NrC   r   d   rB   )rc   r   r   integersrM   r   r   df_bar_datar    s&    99  #,,QQ77r   c                 >    [        U U S S S2   U S   U S   S.5      nU$ )Nr   r   r   r   r   D)r   )r  	df_bar_dfs     r   r  r    s6    TrT"QR		
I r   c           
         / n[        [        U5      5       H  n[        R                  " X   R	                  [
        R                  5       Vs/ s HH  nUR                  5       U ;   d  M  UR                  5       UR                  5       UR                  5       4PMJ     sn5      nUR                  [        U/ SQS95        M     U$ s  snf )N)x_coordy_coordheight)r   r*  )r   r=   rc   arrayfindobjrN   	Rectangle
get_heightget_xget_yappendr   )r  rL   subplot_divisionsubplot_data_df_listir2   subplot_datas          r   _df_bar_xyheight_from_ax_helperr    s     3'()xx s}}55A<<>[0 7AGGIq||~65
 	##<1QR	
 *  s   C
)3C
c                    [        [        U5      5       Vs/ s H;  nUR                  [        U 5      U-  [        U 5      US-   -   R                  5       PM=     nn[        U5      S:X  a  UR                  S S 2US   4   nO UR                  S S 2U4   R                  SS9n[        [        U5      5       H  nXT   nUS:X  a5  US   S:H  R                  5       (       d   eUS   R                  US   5      nOWUS   -   nUS-   [        U5      :X  a  [        R                  " XSSS9  Mt  XTS-      S   n	[        R                  " XSSS9  M     g s  snf )Nr   r   r#  r  r  F)check_namescheck_dtype)
r   r=   ilocreset_indexlocsumre  addrf   assert_series_equal)
r  r  subplot_data_dfsubplot_columnsr  subplot_sliced_by_sourceexpected_total_height	sliced_dfheight_iternext_start_coords
             r   _df_bar_subplot_checkerr    sp   
 s?+,	  -A 	q 3{#3q1u#=	

+-	 -	    ?q  )a1C.C D )a.@ A E E1 E M3'(,/	6i(A-224444#I.229X3FGK%	((;;Kq5C((""SX
  8A>yI""5e# ) s   AEcolumns_usedr   r   r   r  c                     X   nU/nUR                  USSS9n[        XU5      n[        [        U5      5       H  n[	        XXg   XG   5        M     g Nr4   TrO   r5   stackedr&   r  r   r=   r  r  r  r  df_bar_df_trimmedr  rL   r  r  s           r   #test_bar_1_subplot_1_double_stackedr    sj    !/$~			)9t		TB:) 3+,-,@,CEUEX	
 .r   )r   r   r   )r   r   r   )r  r   r   c                     X   nUS   US   4US   4/nUR                  USSS9n[        XU5      n[        [        U5      5       H  n[	        XXg   XG   5        M     g )Nr   r   r    r4   Tr   r  r  s           r   #test_bar_2_subplot_1_double_stackedr  	  s     "/%a,q/:\!_<NO			)9t		TB:) 3+,-,@,CEUEX	
 .r   r  r   r   )r   r  )r   r  )r   r   )r   r   )r  r   )r   r  )r   r   c                     UR                  USSS9n[        XU5      n[        [        U5      5       H  n[	        XXE   X%   5        M     g r  r  r  r  r  rL   r  r  s         r   #test_bar_2_subplot_2_double_stackedr    sX     
!1t	LB:) 3+,-$8$;=M=P	
 .r   )r   r  r   )r   r   r  )r  r   r   c                     UR                  USSS9n[        XU5      n[        [        U5      5       H  n[	        XXE   X%   5        M     g r  r  r
  s         r   $test_bar_2_subplots_1_triple_stackedr  -  sX    
 
!1t	LB:) 3+,-$8$;=M=P	
 .r   c                     / SQnUR                  SSSS9n[        XU5      n[        [        U5      5       H  n[	        XXE   X%   5        M     g )Nr  Tr4   r   r  r
  s         r   test_bar_subplots_stacking_boolr  <  s[    3	E4	@B:) 3+,-$8$;=M=P	
 .r   c                  T    [        / SQ[        S5      S9n U R                  SS/ SQS9  g )N)r   r[   r[   r[   )r  r  r  r  )r[   r   r   r[   rl  rm  Tr4   r  rO   r5   r&  r   r   r&   r'   s    r   !test_plot_bar_label_count_defaultr  H  s*    	>V
B GGT-AGBr   c                      [        / SQ[        S5      S9n [        R                  " S5      n[        R
                  " [        US9   U R                  S/S/ SQS	9  S S S 5        g ! , (       d  f       g = f)
Nr  rl  rm  z?The number of titles (4) must equal the number of subplots (3).r!   r  r4   )zA&Br   r  zExtra Titler  )r   r   reescaper#   r$   r1  r&   )r(   error_regexs     r   'test_plot_bar_label_count_expected_failr  O  s`    	>V
B ))IK 
z	5
 \2 	 	
 
6	5	5s   A##
A1c                  V    [        / SQ[        S5      S9n U R                  S/SSS/S9  g )	Nr  rl  rm  )r   r   r  r4   zA&B&Dr   r  r  r'   s    r   *test_plot_bar_label_count_expected_successr  ^  s0    	>V
B GGo&U7C.GIr   )>__doc__rS   numpyrc   r#   pandas.util._test_decoratorsutil_test_decoratorstdpandasr   r   r   r   r   r   r	   r
   r   pandas._testing_testingrf   pandas.tests.plotting.commonr   r   r   r   r   r   r   rN   r   r  !pandas.plotting._matplotlib.styler   fixturer   skip_if_installedr)   r@   r|   r}   r9   
_all_kindsrd   reshaper   rV   rX   r   r  r  r  r  r  r  r  r  r  r  r  r  rM   r   r   <module>r+     s   ( 	   ) )
 
 
   ,'-.) 	 A ?i ? ? l# $D !6!6!A!AB
Yryy},,Q23VE!H5EF eAh<+\1-	 C	H HB\
 \
~ 8 8 	i 	 	 & H 3*sCj3*)MN

 O

 _oG



 	Z 	Z 	Z 	Z 	

 )O+<>OP
	
	
C
Jr   