+
    xȇi!q                         R t ^ RIt^ RIt^ RIt^ RIHt ^ RIt^ RIH	t	H
t
Ht ^ RIHt ^ RIHtHtHtHtHtHt ^ RIHt ]P0                  ! R4      t]P0                  ! R4      t ! R R	4      tR# )
zTest cases for DataFrame.plotN)is_platform_linux)	DataFrameSeries
date_range)_check_axes_shape_check_box_return_type_check_legend_labels_check_ticks_props_check_visible_flatten_visible)pprint_thing
matplotlibzmatplotlib.pyplotc            "       	  a  ] tR t^ t o ]P
                  P                  ]P
                  P                  R. RGO4      R 4       4       t]P
                  P                  ]P
                  P                  R. RGO4      R 4       4       t	]P
                  P                  ]P
                  P                  R. RGO4      R 4       4       t
]P
                  P                  RRR.4      R	 4       t]P
                  P                  RRR.4      R
 4       t]P
                  P                  R. RHO4      R 4       tR t]P
                  P                  RR7      R 4       t]P
                  P                  RRIRI.RJRI.RKRI.RLRL.RMRL.RNRO..4      R 4       tR t]P
                  P                  R/ ^RPRQ3RRR/^RRRR3.4      R 4       t]P
                  P                  ]P
                  P                  R]! ^4      ]! R^R7      .4      R 4       4       tR tR t]P
                  P                  RRSRI.RKRI.RJRI..4      R 4       tR tR tR  tR! tR" tR# t]P
                  P                  ] ! 4       R$R%R&7      R' 4       t!]P
                  P                  ] ! 4       R$R%R&7      R( 4       t"R) t#]P
                  P                  R*. RTO4      R+ 4       t$R, t%R- t&R. t'R/ t(R0 t)]P
                  P                  R1RURVRWRXR2R3^^.3.4      ]P
                  P                  R. RYO4      R4 4       4       t*]P
                  P                  R5RRR6R7/RRR6R7R8R9/RRR6R7/RRR6R7R8R9/RRR6R%/RRR6R%R8R9/RRR6R%/RRR6R%R8R9/RRR:R7/RRR:R7R8R9/RRR:R7/RRR:R7R8R9/RRR6R7R;R</RRR6R7R8R9R;R</RRR6R7R;R</RRR6R7R8R9R;R</RRR6R%R;R</RRR6R%R8R9R;R</RRR6R%R;R</RRR6R%R8R9R;R</RRR:R7R;R</RRR:R7R8R9R;R</RRR:R7R;R</RRR:R7R8R9R;R</.4      R= 4       t+]P
                  P                  R5RRR6R%/RRR6R7/RRR6R%/RRR6R7/RRR:R7/RRR:R7/.4      R> 4       t,]P
                  P                  R5RRR6R%/RRR6R7/RRR6R%/RRR6R7/RRR:R7/RRR:R7/.4      R? 4       t-]P
                  P                  R@^RA.4      RB 4       t.]P
                  P                  RCRR6R7/.RR6R%/.RR6R7/.RR:R7/.RR:R7/..4      RD 4       t/RZRE lt0RFt1V t2R2# )[TestDataFramePlotsSubplotskindbarbarhlineareac                   \        \        P                  P                  ^4      P                  R4      \	        \
        P                  R,          4      R7      pVP                  VRRRR7      p\        V^RR7       VP                  R8X  g   Q h\        W2P                  RR7       F  w  rE\        V\        V4      .R7       K  	  VRR  F  p\        VP                  4       \        VP!                  4       R	R
7       VR8w  d   \        VP!                  RR7      R	R
7       \        VP                  P#                  4       R	R
7       \        VP%                  4       4       K  	  \        VR,          P                  4       \        VR,          P!                  4       4       \        VR,          P!                  RR7      4       \        VR,          P                  P#                  4       4       \        VR,          P%                  4       4       R# )   N
   NindexT)r   subplotssharexlegendaxes_numlayout)strictlabelsNFvisibler   minorr      r)      r)   )r   nprandomdefault_rngliststringascii_lettersplotr   shapezipcolumnsr   r   r
   xaxisget_xticklabels	get_labelget_yticklabels)selfr   dfaxesaxcolumns   &&    /Users/max/.openclaw/workspace/postharvest/venv/lib/python3.14/site-packages/pandas/tests/plotting/frame/test_frame_subplots.pytest_subplots(TestDataFramePlotsSubplots.test_subplots!   s    II!!!$++G4v++C01

 wwD4TwJ$6:zzT!!!dJJt<JB \&-A,BC = s)B288$2--/?u}r111=uM288--/?2--/0  	tBx~~&tBx//12tBx//d/;<tBx~~//12tBx//12    c                   \        \        P                  P                  ^4      P                  R4      \	        \
        P                  R,          4      R7      pVP                  VRRR7      pV F  p\        VP                  4       \        VP                  4       4       \        VP                  RR7      4       \        VP                  P                  4       4       \        VP                  4       4       K  	  R# )	r   r   r   TFr   r   r   r&   Nr(   )r   r/   r0   r1   r2   r3   r4   r5   r
   r9   r:   r;   r<   r=   r   r>   r?   r@   s   &&   rB   test_subplots_no_share_x3TestDataFramePlotsSubplots.test_subplots_no_share_x?   s     II!!!$++G4v++C01
 wwD4w>B288$2--/02--D-9:288--/02--/0 rE   c                   \        \        P                  P                  ^4      P                  R4      \	        \
        P                  R,          4      R7      pVP                  VRRR7      pV F  pVP                  4       f   K  Q h	  R# )r   r   r   TF)r   r   r   Nr(   )	r   r/   r0   r1   r2   r3   r4   r5   
get_legendrH   s   &&   rB   test_subplots_no_legend2TestDataFramePlotsSubplots.test_subplots_no_legendN   sp     II!!!$++G4v++C01
 wwD4w>B==?*** rE   c                p   \        R R^
R7      p\        \        P                  P	                  ^4      P                  R4      VR7      pVP                  VRRR7      p\        V^RR7       VRR  F  p\        VP                  4       \        VP                  4       RR	7       \        VP                  RR
7      RR	7       \        VP                  P                  4       RR	7       \        VP                  4       4       K  	  \        VR,          P                  4       \        VR,          P                  4       4       \        VR,          P                  RR
7      4       \        VR,          P                  P                  4       4       \        VR,          P                  4       4       \        V^ R7       R# )
2014-07-01MEstartfreqperiodsr   TrG   r   NFr$   r&   )xrotr(   r*   r-   r.   )r   r   r/   r0   r1   r5   r   r
   r9   r:   r;   r<   r	   r=   r   idxr>   r?   r@   s   &&    rB   test_subplots_timeseries3TestDataFramePlotsSubplots.test_subplots_timeseriesY   s>   |$Cryy,,Q/66w?sKwwD4w=$6:s)B288$2--/?2--D-95I288--/?2--/0  	tBx~~&tBx//12tBx//d/;<tBx~~//12tBx//124a(rE   c                   \        R R^
R7      p\        \        P                  P	                  ^4      P                  R
4      VR7      pVP                  VRR^-^R7      pV F  p\        VP                  4       \        VP                  4       4       \        VP                  RR7      4       \        VP                  P                  4       4       \        VP                  4       4       \        V^^-^R7       K  	  R	# )rP   rQ   rR   r   TF)r   r   r   rotfontsizer&   )
xlabelsizerV   
ylabelsizeNr(   )r   r   r/   r0   r1   r5   r
   r9   r:   r;   r<   r	   rW   s   &&    rB   test_subplots_timeseries_rot7TestDataFramePlotsSubplots.test_subplots_timeseries_rotp   s    |$Cryy,,Q/66w?sKwwD42PQwRB288$2--/02--D-9:288--/02--/0rabQG rE   colc                   R \         P                  ! . RO4      R\        P                  ! RRR7      \        P                  ! ^
RR7      \        P                  ! ^
RR7      .R\        P                  ! R4      \        P                  ! R4      \        P                  ! R	4      .R
\        P                  ! RRR7      \        P                  ! RRR7      \        P                  ! R	RR7      .R. RO/p\        V4      pVP                  VR7      pVP                  4       ^ ,          P                  4       ^,          pW1,          P                  pWV8H  P                  4       '       g   Q hR# )numeric	timedeltas)unitmhdatetime_no_tz2017-08-01 00:00:002017-08-01 02:00:002017-08-02 00:00:00datetime_all_tzTutctextyNr+   r      iThisshouldfail)r/   arraypd	Timedeltato_datetimer   r5   	get_linesget_datavaluesall)r=   rb   datatestdatar@   resultexpecteds   &&     rB   test_subplots_timeseries_y_axis:TestDataFramePlotsSubplots.test_subplots_timeseries_y_axis}   s    rxx	*Ss+Rc*Rc*
 454545
 4$?4$?4$? 
 .#
& T?]]S]!"++-a0=''"''))))rE   c                   R \         P                  ! . RO4      R. RO/p\        V4      pRp\        P                  ! \
        VR7      ;_uu_ 4        VP                  RR7       RRR4       R#   + '       g   i     R# ; i)rd   rq   zno numeric data to plotmatchrr   Nrt   rv   )r/   rz   r   pytestraises	TypeErrorr5   )r=   r   r   msgs   &   rB   %test_subplots_timeseries_y_text_error@TestDataFramePlotsSubplots.test_subplots_timeseries_y_text_error   s]     rxx	*.
 T?']]9C00MMFM# 1000s   A--A>	z6not support for period, categorical, datetime_mixed_tz)reasonc                   R\         P                  ! . RO4      R\        P                  ! RRR7      \        P                  ! RRR7      \        P                  ! RRR7      .R\        P                  ! . RO. ROR	R
7      R\        P
                  ! RRR7      \        P
                  ! R4      \        P
                  ! R4      ./p\        V4      pVP                  RRR7      pVP                  4       ^ ,          P                  4       ^,          VR,          P                  8H  P                  4       '       g   Q hVP                  RRR7      pVP                  4       ^ ,          P                  4       ^,          VR,          P                  8H  P                  4       '       g   Q hVP                  RRR7      pVP                  4       ^ ,          P                  4       ^,          VR,          P                  8H  P                  4       '       g   Q hR# )aY  
This test will fail for:
    period:
        since period isn't yet implemented in ``select_dtypes``
        and because it will need a custom value converter +
        tick formatter (as was done for x-axis plots)

    categorical:
         because it will need a custom value converter +
         tick formatter (also doesn't work for x-axis, as of now)

    datetime_mixed_tz:
        because of the way how pandas handles ``Series`` of
        ``datetime`` objects with different timezone,
        generally converting ``datetime`` objects in a tz-aware
        form could help with this problem
rd   periodrk   ri   )rT   z2017-08-01 02:00rm   categoricalF)
categoriesordereddatetime_mixed_tzTro   rl   )xrs   Nrt   )cba)r   r   r   )r/   rz   r{   PeriodCategoricalr}   r   r5   r~   r   r   r   )r=   r   r   	ax_periodax_categoricalax_datetime_mixed_tzs   &     rB   -test_subplots_timeseries_y_axis_not_supportedHTestDataFramePlotsSubplots.test_subplots_timeseries_y_axis_not_supported   s   ( rxx	*		/c:		,37		/c:
 2>>OU  4$?4545"
  T?MMIM:	!!$--/2hx6H6O6OO
#% 	  "mD$$&q)224Q7&--.
#% 	   (}}y<O}P **,Q/88:1=+,334
#% 	 rE   zlayout, exp_layoutc                   \        \        P                  P                  ^4      P                  R4      \	        \
        P                  R,          4      R7      pVP                  RVR7      p\        V^VR7       VP                  V8X  g   Q hR# )r   r   r   Tr   r    r   Nr(   
r   r/   r0   r1   r2   r3   r4   r5   r   r6   )r=   r    
exp_layoutr>   r?   s   &&&  rB   !test_subplots_layout_multi_column<TestDataFramePlotsSubplots.test_subplots_layout_multi_column   sp     II!!!$++G4v++C01

 wwVw4$:>zzZ'''rE   c                
   \        \        P                  P                  ^4      P                  R	4      \	        \
        P                  R,          4      R7      pRp\        P                  ! \        VR7      ;_uu_ 4        VP                  RR
R7       RRR4       Rp\        P                  ! \        VR7      ;_uu_ 4        VP                  RRR7       RRR4       R#   + '       g   i     LT; i  + '       g   i     R# ; i)r   r   r   z1Layout of 1x1 must be larger than required size 3r   Tr   Nz1At least one dimension of layout must be positiver(   r+   r+   )r.   r.   )r   r/   r0   r1   r2   r3   r4   r   r   
ValueErrorr5   )r=   r>   r   s   &  rB   'test_subplots_layout_multi_column_errorBTestDataFramePlotsSubplots.test_subplots_layout_multi_column_error   s    II!!!$++G4v++C01
 B]]:S11GGT&G1 2 B]]:S11GGT(G3 21	 21 211s   >C C1C.	1D	z:kwargs, expected_axes_num, expected_layout, expected_shaper    c                   \        \        P                  P                  ^4      P                  R4      \	        \
        P                  R,          4      R7      pVP                  ! RRR/VB p\        VVVR7       VP                  V8X  g   Q hR# )	r   r   r   r   Tr   Nr   r+    r   )r=   kwargsexpected_axes_numexpected_layoutexpected_shaper>   r?   s   &&&&&  rB   "test_subplots_layout_single_column=TestDataFramePlotsSubplots.test_subplots_layout_single_column   s{     II!!!$++G4v++C01
 ww///&"	

 zz^+++rE   rX   1/1/2000rU   c                   \         P                  ! R 4      ;_uu_ 4        \        \        P                  P                  ^4      P                  R4      VR7      pVP                  RRR7       R R R 4       R #   + '       g   i     R # ; i)Nr   Tr   )ru      )r)   r   )tmassert_produces_warningr   r/   r0   r1   standard_normalr5   )r=   rX   r>   s   && rB   test_subplots_warnings1TestDataFramePlotsSubplots.test_subplots_warnings  s[     ''--299003CCFKSVWBGGT&G1 .---s   AA66B	c                l   \         P                  P                  ^^4      w  r\        \        P
                  P                  ^4      P                  R4      \        \        P                  R,          4      R7      pVP                  RV^ ,          RRR7      p\        V^R	R7       VP                  R
8X  g   Q hV^ ,          P                  VJ g   Q hVP                  RV^,          RRR7      p\        V^R	R7       VP                  R
8X  g   Q hV^ ,          P                  VJ g   Q h\        V^RR7       R# )r   r   r   TFr   r@   r   shareyr   Nr(   )r+   r)   r,   )r   r)   )mplpyplotr   r   r/   r0   r1   r2   r3   r4   r5   r   r6   figure)r=   figr?   r>   returneds   &    rB   test_subplots_multiple_axes6TestDataFramePlotsSubplots.test_subplots_multiple_axes  s   JJ''1-	II!!!$++G4v++C01

 77DT!WU57Q(Qv>~~%%%{!!S(((77DT!WU57Q(Qv>~~%%%{!!S((($6:rE   c                   \        \        P                  P                  ^4      P                  R4      \	        \
        P                  R,          4      R7      pRp\        P                  P                  ^^4      w  r4\        P                  ! \        VR7      ;_uu_ 4        VP                  RVR7       RRR4       R#   + '       g   i     R# ; i)	r   r   r   z@The number of passed axes must be 3, the same as the output plotr   Tr   r@   Nr(   )r   r/   r0   r1   r2   r3   r4   r   r   r   r   r   r   r5   )r=   r>   r   _r?   s   &    rB   !test_subplots_multiple_axes_error<TestDataFramePlotsSubplots.test_subplots_multiple_axes_error1  s    II!!!$++G4v++C01
 Q**%%a+]]:S11GGTdG+ 2111s    B>>C	c           
        \         P                  P                  ^^4      w  r4\        \        P
                  P                  ^4      P                  R
4      \        \        P                  R,          4      R7      p\        P                  ! \        RR7      ;_uu_ 4        VP                  RWARRR7      p\        V^VR7       VP                  R8X  g   Q h R	R	R	4       R	#   + '       g   i     R	# ; i)r   r   r   zlayout keyword is ignoredr   TF)r   r@   r    r   r   r   N)r   r   )r   )r   r   r   r   r/   r0   r1   r2   r3   r4   r   r   UserWarningr5   r   r6   )r=   r    r   r   r?   r>   r   s   &&&    rB   !test_subplots_multiple_axes_2_dim<TestDataFramePlotsSubplots.test_subplots_multiple_axes_2_dim>  s     **%%a+II!!!$++G4v++C01
 '';VWWww$eE  H h:F>>T))) XWWWs   7C  C1	c                f   \         P                  P                  ^^4      w  r\        \        P
                  P                  ^4      P                  R4      \        \        P                  R,          4      R7      pVP                  RV.RRR7      p\        V^R	R7       VP                  R
8X  g   Q hR# )r+   r   r   TFr   r   Nr   r   r+   )r   r   r   r   r/   r0   r1   r2   r3   r4   r5   r   r6   )r=   r   r?   r>   s   &   rB   &test_subplots_multiple_axes_single_colATestDataFramePlotsSubplots.test_subplots_multiple_axes_single_colX  s     **%%a+II!!!$++G4v++C01

 ww$ewL$6:zzT!!!rE   c           	        \         P                  P                  ^^RRR7      w  r\         P                  P                  RRRRR7       \	        \
        P                  P                  ^4      P                  R4      \        RR^
R	7      R
7      p\        VP                  4       4       F  w  rEW4,          P                  V^R7       K   	  V^ R P                  4        F  p\        VP                  4       RR7       K   	  VR,          P                  4        F  p\        VP                  4       RR7       K   	  V. RO^ .3,          P                  4        F  p\        VP                  4       RR7       K   	  V. RO^.3,          P                  4        F  p\        VP                  4       RR7       K   	  V. RO^.3,          P                  4        F  p\        VP                  4       RR7       K   	  R# )r)   T)r   r   g?gffffff?g333333?)leftrighthspacewspacerP   rQ   rR   r   )r@   r]   Fr$   N)r   	   r.   )    r+   r   )r   r   r   subplots_adjustr   r/   r0   r1   r   r   	enumerateravelr5   r
   r:   r<   )r=   r   r?   r>   ir@   s   &     rB   test_subplots_ts_share_axes6TestDataFramePlotsSubplots.test_subplots_ts_share_axese  s   **%%a4%E

""DS"QII!!!$44W=<dBG
 tzz|,EAEJJ"qJ) - q*""$B2--/? % r(.."B2--/> # y1#~&,,.B2--/> / y1#~&,,.B2--/? /y1#~&,,.B2--/? /rE   c                   R . ROR. ROR. RO/p\        V\        RR4      R7      pVR R.,          P                  RR7      pVR,          P                  V^ ,          RR7       \        V^ ,          P	                  4       R	R
7       \        V^,          P	                  4       RR
7       VP                  4        F  p\        VP                  4       RR
7       K   	  R# )ABCz
2014 10 11z
2014 10 14r   Tr   )r@   secondary_yFr$   N)      ?       @      @      @)r   r   r   r   )ru   r+   r)   r   )r   r   r5   r
   r:   r   r<   )r=   dr>   r?   r@   s   &    rB   'test_subplots_sharex_axes_existing_axesBTestDataFramePlotsSubplots.test_subplots_sharex_axes_existing_axes  s    &-A3Uq
< FG3*~""D"1
3QT2tAw..0%@tAw..0$?**,B2--/> rE   c                   \        \        P                  P                  ^4      P                  R4      \	        R4      R7      pVP                  RR7      pV F-  p\        VR.R7       \        VP                  4      ^8X  d   K-  Q h	  R# )	r   aaaaar8   Tr   r   r"   Nru   ru   	r   r/   r0   r1   r2   r5   r   lenlinesr=   r>   r?   r@   s   &   rB   test_subplots_dup_columns4TestDataFramePlotsSubplots.test_subplots_dup_columns  sh    ryy,,Q/66v>WVwww%B SE2rxx=A%%% rE   c                   \        \        P                  P                  ^4      P                  R4      \	        R4      R7      pVP                  RRR7      pV F-  p\        VR.R7       \        VP                  4      ^8X  d   K-  Q h	  R# )	r   r   r   Tr   )r   r   r"   Nr   r   r   s   &   rB   %test_subplots_dup_columns_secondary_y@TestDataFramePlotsSubplots.test_subplots_dup_columns_secondary_y  sj    ryy,,Q/66v>WVww#w6B SE2rxx=A%%% rE   c                \   \        \        P                  P                  ^4      P                  R4      \	        R4      R7      pVP                  RR7      p\        VR.^,          R7       \        VP                  4      ^ 8X  g   Q h\        VP                  P                  4      ^8X  g   Q hR# )	r   r   r   r   )r   z	a (right)r"   Nr   )
r   r/   r0   r1   r2   r5   r   r   r   right_ax)r=   r>   r@   s   &  rB   0test_subplots_dup_columns_secondary_y_no_subplotKTestDataFramePlotsSubplots.test_subplots_dup_columns_secondary_y_no_subplot  s    ryy,,Q/66v>WVWWW%R(9:288}!!!2;;$$%***rE   zWeird rounding problemsF)r   r!   c                8   \         P                  ! . RO4      p\        R^.^,          R\        \	        ^^4      4      /\	        ^4      R7      pVP
                  P                  RRR7      p\        P                  ! VP                  P                  4       V4       R# )皙?r   r   r   T)gridlogN)r  r         $@d   )r/   rz   r   r2   ranger5   r   r   assert_numpy_array_equalyaxisget_ticklocs)r=   r   r>   r@   s   &   rB   test_bar_log_no_subplots3TestDataFramePlotsSubplots.test_bar_log_no_subplots  sr     8812 aS1Wc4a+<=U1XNWW[[d[-
##BHH$9$9$;XFrE   c                   \         P                  ! . RO4      p\        \        ^R.4      \        RR.4      .4      P                  P                  RRR7      p\        P                  ! V^ ,          P                  P                  4       V4       \        P                  ! V^,          P                  P                  4       V4       R# )r  i,  i  T)r  r   N)r  r   r  g      Y@g     @@g     @)
r/   rz   r   r   r5   r   r   r	  r
  r  )r=   r   r@   s   &  rB   test_bar_log_subplots0TestDataFramePlotsSubplots.test_bar_log_subplots  s     88@ASz*FC:,>?@EEIIt J 
 	##BqEKK$<$<$>I
##BqEKK$<$<$>IrE   c                    TpVP                   P                  R R7      p\        V\        4      '       g   Q h\	        VR. ROR7       R# )Tr   N)expected_keysheightweightcategory)r5   box
isinstancer   r   )r=   hist_dfr>   r   s   &&  rB   )test_boxplot_subplots_return_type_defaultDTestDataFramePlotsSubplots.test_boxplot_subplots_return_type_default  s@     d+&&))))D(H	
rE   rtc                f    TpVP                   P                  VR R7      p\        VV. RORR7       R# )T)return_typer   F)r  check_ax_titleNr  )r5   r  r   )r=   r  r  r>   r   s   &&&  rB   !test_boxplot_subplots_return_type<TestDataFramePlotsSubplots.test_boxplot_subplots_return_type  s1    77;;2;=: 		
rE   c                   \        \        P                  P                  ^4      P	                  R4      \        R^
R7      \        R4      R7      p\        P                  ^^RR7      w  r#VP                  RVR7      pV F:  p\        VP                  4      ^8X  g   Q h\        VP                  4       RR7       K<  	  \        V^ ,          P                  4       R	R7       \        V^ ,          P                  RR
7      R	R7       \        V^,          P                  4       RR7       \        V^,          P                  RR
7      RR7       R# )r   r   r   ABr   r8   T)r   r   r$   Fr&   Nr   r   r   r/   r0   r1   r   r   r2   pltr   r5   r   r   r
   r<   r:   r=   r>   r   r?   r@   s   &    rB   $test_df_subplots_patterns_minorticks?TestDataFramePlotsSubplots.test_df_subplots_patterns_minorticks  s    II!!!$44W=Z4J
 ,,q!D,1www.Brxx=A%%%2--/>  	tAw..0%@tAw..T.:EJtAw..0$?tAw..T.:DIrE   c                   \        \        P                  P                  ^4      P	                  R4      \        R^
R7      \        R4      R7      p\        P                  ^^4      w  r#\        P                  ! \        RR7      ;_uu_ 4        VP                  RVRR7      pR	R	R	4       V F:  p\        VP                  4      ^8X  g   Q h\        VP!                  4       RR
7       K<  	  \        V^ ,          P#                  4       RR
7       \        V^ ,          P#                  RR7      RR
7       \        V^,          P#                  4       RR
7       \        V^,          P#                  RR7      RR
7       R	#   + '       g   i     L; i)r   r   r   r#  r$  zsharex and shareyr   T)r   r@   r   Nr$   Fr&   r%  )r   r/   r0   r1   r   r   r2   r'  r   r   r   r   r5   r   r   r
   r<   r:   r(  s   &    rB   2test_df_subplots_patterns_minorticks_1st_ax_hiddenMTestDataFramePlotsSubplots.test_df_subplots_patterns_minorticks_1st_ax_hidden  s!   II!!!$44W=Z4J

 ,,q!$'';NOO77DT$7?D PBrxx=A%%%2--/>  	tAw..0%@tAw..T.:EJtAw..0$?tAw..T.:DI POs   E66F	c                   \        \        P                  P                  ^4      P	                  R
4      \        R^
R7      \        R4      R7      p\        P                  ^^4      w  r#VP                  RVR7      pV Fr  p\        VP                  4      ^8X  g   Q h\        VP                  4       RR7       \        VP                  4       RR7       \        VP                  RR7      RR7       Kt  	  R	# )r   r   r   r#  r$  Tr   r$   r&   Nr%  r&  r(  s   &    rB   /test_df_subplots_patterns_minorticks_not_sharedJTestDataFramePlotsSubplots.test_df_subplots_patterns_minorticks_not_shared  s    II!!!$44W=Z4J
 ,,q!$www.Brxx=A%%%2--/>2--/>2--D-94H	 rE   c                x   \        \        P                  P                  ^4      P                  R4      4      p\        P                  VP
                  R&   \        P                  VP
                  R	&   \        P                  P                  ^^4      w  r#VP                  P                  VRRR7       \        P                  ! R^
R4      p\        P                  ! R
^R4      p\        P                  ! V^ ,          P                  4       V4       \        P                  ! V^,          P                  4       V4       R# )r   TF)r@   r   r   g      @      ?Nr%  ):ru   NNr+   ):Nru   Nr         )r   r/   r0   r1   nanilocr   r   r   r5   r   aranger   r	  
get_xticks)r=   r>   r   axsexpected_ax1expected_ax2s   &     rB   test_subplots_sharex_false5TestDataFramePlotsSubplots.test_subplots_sharex_false  s     ryy,,Q/66w?@$$Q*
d59yyb#.yyq#.
##CF$5$5$7F
##CF$5$5$7FrE   c           	        \        R ^
R7      p\        \        P                  P	                  ^4      P                  R
4      VR7      p/ p\        \        P                  P                  R4      '       d   RVR&   \        P                  P                  ! R/ VB w  rV\        P                  ! R4      ;_uu_ 4        VP                  V^ ,          R7       VP                  RR	7      ;_uu_ 4       p\        P                  P                  V4       RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i)now)rS   rU   r   get_constrained_layoutTconstrained_layoutN)r@   wb)moder(   )r   )r   r   r/   r0   r1   hasattrr   r   Figurer   r   r   r5   opensavefig)r=   	temp_filerX   r>   r   r   r?   paths   &&      rB    test_subplots_constrained_layout;TestDataFramePlotsSubplots.test_subplots_constrained_layout"  s    ub1ryy,,Q/66w?sK3::$$&>??+/F'(**%%262''--GGtAwGT**d

""4( + .-** .--s$   84D1, D	D1D.)D11E	z index_name, old_label, new_labelN c                  aa \        ^^.^^..RR.R7      pW%P                  n        VP                  VRR7      p\        ;QJ d    R V 4       F  '       d   K   RM	  RM! R V 4       4      '       g   Q h\        ;QJ d    V3R lV 4       F  '       d   K   RM	  RM! V3R lV 4       4      '       g   Q hVP                  VSSRR	7      p\        ;QJ d    V3R
 lV 4       F  '       d   K   RM	  RM! V3R
 lV 4       4      '       g   Q h\        ;QJ d    V3R lV 4       F  '       d   K   RM	  RM! V3R lV 4       4      '       g   Q hR# )r+   zType AzType Br   T)r   r   c              3   F   "   T F  qP                  4       R 8H  x  K  	  R# 5i)rK  N)
get_ylabel).0r@   s   & rB   	<genexpr>STestDataFramePlotsSubplots.test_xlabel_ylabel_dataframe_subplots.<locals>.<genexpr>C  s     84R==?b(4s   !Fc              3   H   <"   T F  qP                  4       S8H  x  K  	  R # 5iN)
get_xlabel)rO  r@   	old_labels   & rB   rP  rQ  D  s     ?$B==?i/$s   ")r   ylabelxlabelr   c              3   Z   <"   T F   qP                  4       \        S4      8H  x  K"  	  R # 5irS  )rN  strrO  r@   	new_labels   & rB   rP  rQ  H       Dt==?c)n4t   (+c              3   Z   <"   T F   qP                  4       \        S4      8H  x  K"  	  R # 5irS  )rT  rY  rZ  s   & rB   rP  rQ  I  r\  r]  N)r   r   namer5   r   )r=   r   
index_namerU  r[  r>   r?   s   &&&ff  rB   %test_xlabel_ylabel_dataframe_subplots@TestDataFramePlotsSubplots.test_xlabel_ylabel_dataframe_subplots/  s     AA'(H1EF" wwD4w0s848sss8488888s?$?sss?$????? wwD9twTsDtDsssDtDDDDDsDtDsssDtDDDDDrE   r   stackedTwidth?r   alignedgec           
         \        R ^.^,          R\        \        ^4      4      /\        ^4      R7      pV P                  ! V3/ VB  R# )r   r   r   N)r   r2   r  _check_bar_alignmentr=   r   r>   s   && rB   test_bar_align_multiple_columns:TestDataFramePlotsSubplots.test_bar_align_multiple_columnsK  s?    F aS1Wc4a>:%(K!!"//rE   c                    \        \        P                  P                  ^4      P	                  ^4      4      pV P
                  ! V3/ VB  R# )r   Nr   r/   r0   r1   r   ri  rj  s   && rB   test_bar_align_single_column7TestDataFramePlotsSubplots.test_bar_align_single_columnq  s;     ryy,,Q/??BC!!"//rE   c                    \        \        P                  P                  ^4      P	                  R4      4      pV P
                  ! V3RRRR/VB  R# )r   rd  re  positiong?Nr   rn  rj  s   && rB   test_bar_barwidth_position5TestDataFramePlotsSubplots.test_bar_barwidth_position  sE     ryy,,Q/??GH!!"HCH#HHrE   wr   c                
   \        \        P                  P                  ^4      P	                  R4      4      pVP
                  P                  RVR7      pVP                  P                  4       p\        P                  ! V\        P                  ! . RO4      4       VP                  4       R8X  g   Q hVP                  ^ ,          P                  4       R8X  g   Q hVP                  R	,          P                  4       R8X  g   Q hR# )
r   T)rc  rd  g      @Nr   )r   r+   r   r)   r   )g      g      @r3  r.   )r   r/   r0   r1   r   r5   r   r9   r  r   r	  rz   get_xlimpatchesget_x)r=   ru  r>   r@   tickss   &&   rB   test_bar_barwidth_position_int9TestDataFramePlotsSubplots.test_bar_barwidth_position_int  s     ryy,,Q/??GHWW[[Q[/%%'
##E288O+DE{{}---zz!}""$,,,zz"~##%,,,rE   zkind, kwargsc                    \        \        P                  P                  ^4      P	                  R4      4      pV P
                  ! V3RVR^/VB  R# )r   r   rd  Nr   rn  )r=   r   r   r>   s   &&& rB   &test_bar_barwidth_position_int_width_1ATestDataFramePlotsSubplots.test_bar_barwidth_position_int_width_1  sE     ryy,,Q/??GH!!"C4CqCFCrE   c           
        VP                  VVVVVVR R7      p\        V4      pV EF)  p	VR8X  dX   V	P                  p
V	P                  4       w  r\	        R V	P
                   4       4      p\        R V	P
                   4       4      pMdVR8X  dX   V	P                  p
V	P                  4       w  r\	        R V	P
                   4       4      p\        R V	P
                   4       4      pM\        h\        P                  ! WR,
          4       \        P                  ! WR,           4       V	P
                  ^ ,          pVR8X  d=   VR J g   VR J d1   VP                  4       pVVP                  4       V,          ,           pEMVR8X  d^   VR	J dX   VP                  4       VP                  4       \        VP                  4      ,          V,          ,           pVP                  4       pMVR8X  dJ   VR J g   VR J d>   VP!                  4       VP#                  4       V,          ,           pVP!                  4       pMjVR8X  d^   VR	J dX   VP!                  4       VP#                  4       \        VP                  4      ,          V,          ,           pVP!                  4       pM\        hV
P%                  4       \&        P(                  ! \        V4      4      8H  P+                  4       '       g   Q hVR
8X  d0   \        P                  ! V
P%                  4       ^ ,          V4       EK  VR8X  d0   \        P                  ! V
P%                  4       ^ ,          V4       EK&  \        h	  V# )T)r   rc  r   rf  rd  rr  r  r   c              3   @   "   T F  qP                  4       x  K  	  R # 5irS  )ry  rO  ps   & rB   rP  BTestDataFramePlotsSubplots._check_bar_alignment.<locals>.<genexpr>       =*Qwwyy*   c              3   j   "   T F)  qP                  4       VP                  4       ,           x  K+  	  R # 5irS  )ry  	get_widthr  s   & rB   rP  r    s"     M*Qwwy1;;=88*   13r   c              3   @   "   T F  qP                  4       x  K  	  R # 5irS  )get_yr  s   & rB   rP  r    r  r  c              3   j   "   T F)  qP                  4       VP                  4       ,           x  K+  	  R # 5irS  )r  
get_heightr  s   & rB   rP  r    s"     N:awwy1<<>99:r  g      ?Fcenterrg  )r5   r   r9   rw  minrx  maxr
  get_ylimr   r   assert_almost_equalry  r  r   r8   r  r  r  r/   r6  r   )r=   r>   r   rc  r   rf  rd  rr  r?   r@   axisax_minax_maxmin_edgemax_edger  rg  r  s   &&&&&&&&          rB   ri  /TestDataFramePlotsSubplots._check_bar_alignment  s    ww  
  %Bu}xx!#="**==M"**MMxx!#="**==N2::NN   ""6d?;""6d?;

1Au}'T/X5Ewwy 887e#3Q[[]S_%Dx%OOwwyW_D8HQ\\^h%>>wwyGu$4Q\\^c"**o%E%PPwwy   %%'299SW+==BBDDDD &&t'8'8':1'=vF&&&t'8'8':1'=tD  [ ^ rE   r   )r   r   r   r   )rd   re   rj   rn   )r   r   )r.   r   )r   r.   )r+   r   )r.   r   )r   r.   )r   r+   r   r   )r)   r)   )r   r+   )dictr?   both)NrK  new)oldr  r  )NrK  rK  )NrK  r+   )r   r   r   )r   FFr  r2  r2  )3__name__
__module____qualname____firstlineno__r   markslowparametrizerC   rI   rM   rY   r`   r   r   xfailr   r   r   r   r  r   r   r   r   r   r   r   r   r   r   r   r   r  r  r  r   r)  r,  r/  r;  rI  ra  rk  ro  rs  r{  r~  ri  __static_attributes____classdictcell__)__classdict__s   @rB   r   r       s	    [[[[V%DE3 F 38 [[[[V%DE1 F 1 [[[[V%DE+ F + [[Vff%56) 7), [[Vff%56
H 7
H [[L**8	$ [[VW0 X0d [[VffVff	

	(
	(4 [[DFD!FF3	
,,  [[[[UU1Xz*a/P$QR2 S 2;&, [[Vff	
**$"@:?&&+ [[(  
G
G [[(  
J
J
 [[T#;<
 =
J(J&I G ) [[*!21v	
	 [[V%<=E >	E" [[ UIt,UItWc:VY-VYgs;UIu-UIugs;VY.VYw<UJ-UJgs;VZ.VZw<UItWf=UItWc7FKVYgv>VYgsGVLUIugv>UIugsGVLVYw?VYwWfMUJgv>UJgsGVLVZw?VZwWfM9	
 B0C B0
 [[UIu-UIt,VY.VY-UJ-VZ.	

0
0 [[UIu-UIt,VY.VY-UJ-VZ.	

I
I [[S1c(+	- ,	- [[Y%&i'(i&'Z&'j$'(	
	D	D
E ErE   r   )__doc__r3   numpyr/   r   pandas.compatr   pandasr{   r   r   r   pandas._testing_testingr   pandas.tests.plotting.commonr   r   r   r	   r
   r   pandas.io.formats.printingr   importorskipr   r'  r   r   rE   rB   <module>r     sb    #    +  
   4,'-.O OrE   