+
     ]i  c                   s    ^ RI t^ RIt^ RIHt ^ RIHt ^ RIH	t	H
t
 R t]
! R.4      R 4       t]
! R.4      R 4       t]	! R	.R
7      R 4       t]
! R.4      R 4       tR t]
! R.4      R 4       tR tR# )    N)Spines)check_figures_equalimage_comparisonc            	     s~    ! R R4      p RV ! 4       RV ! 4       RV ! 4       RV ! 4       /p\        R/ VB pVRR.,          P                  R4       VR,          P                  R	4       VR,          P                  R
R7       \        P                  ! \
        RR7      ;_uu_ 4        VP                   RRR4       \        P                  ! \        RR7      ;_uu_ 4        VR,           RRR4       \        P                  ! \        RR7      ;_uu_ 4        V. RO,           RRR4       \        P                  ! \        RR7      ;_uu_ 4        VR,           RRR4       \        P                  ! \        RR7      ;_uu_ 4        VR,           RRR4       \        P                  ! \        RR7      ;_uu_ 4        VR,           RRR4       R#   + '       g   i     EL#; i  + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     R# ; i)z)Test Spines and SpinesProxy in isolation.c                   s2   a  ] tR t^t o R tR tR tRtV tR# )#test_spine_class.<locals>.SpineMockc                s    R V n         R # Nval)selfs   &C/usr/lib64/python3.14/site-packages/matplotlib/tests/test_spines.py__init__Z,test_spine_class.<locals>.SpineMock.__init__   s	    DH    c                s:    \        V 4      P                  V4       R # r   )ZvarsZupdate)r   Zkwargss   &,r	   setZ'test_spine_class.<locals>.SpineMock.set   s    Jf%r   c                s    Wn         R # r   r   )r   r   s   &&r	   set_valZ+test_spine_class.<locals>.SpineMock.set_val   s    Hr   r   N)	Z__name__Z
__module__Z__qualname__Z__firstlineno__r
   r   r   Z__static_attributes__Z__classdictcell__)Z__classdict__s   @r	   	SpineMockr      s     		&	 	r   r   leftrighttopbottomx:NNNybar)foor   )ZmatchNzfoo, barzsingle listzSpines does not support slicing:zleftzrightN:ztopNN )r   r   r   r   )r   r   )	r   r   r   pytestZraisesZAttributeErrorr   ZKeyErrorZ
ValueError)r   Zspines_dictspines      r	   test_spine_classr   	   sr     		y{)+	K "k"F
 FG%%c* 1Ic 1IMMeM 
~U	3	3

 
4	xu	-	-u 
.	xz	2	2./ 
3	z	7	7 
8	z)J	K	K~ 
L	z)J	K	Kv 
L	K 
4	3	3	-	-	-	2	2	7	7	K	K	K	K	KsH   #G

GG2

H 
H6
H+
G	G/	2H	H	H(	+H<	zspines_axes_positions.pngc                  s   \         P                  ! 4       p \        P                  ! ^ ^\        P                  ,          ^d4      p^\        P
                  ! V4      ,          pV P                  ^^^4      pVP                  R4       VP                  W4       VP                  P                  P                  R4       VP                  P                  R4       VP                  P                  P                  R4       VP                  P                  R4       VP                  P                   P#                  R4       VP                  P$                  P#                  R4       R# )r    zcentered spinesr   r   ZnoneN)axes皙?)r   g      ?)pltfigurenpZlinspaceZpiZsinadd_subplotZ	set_titleplotr   r   set_positionyaxisset_ticks_positionr   xaxisr   Z	set_colorr   )figr   r   ax       r	   test_spines_axes_positionsr*   :   s     **,C
Aqw$A	"&&)A	Aq	!BLL"#GGAMIIOO  /HH(IIMM~.HH&IINNV$IIv&r   zspines_data_positions.pngc                  s   \         P                  ! 4       w  rVP                  P                  P	                  R4       VP                  P
                  P	                  R4       VP                  P                  P	                  R4       VP                  P                  P	                  R4       VP                  R^.4       VP                  R^.4       R# )dataZzeroN)r+   g      )r+   g      ?)r+   g      i)
r   subplotsr   r   r#   r   r   r   Zset_xlimZset_ylimr'   r(        r	   test_spines_data_positionsr/   K   s    llnGCIINN/IIMM}-IIOO  0II!!&)KKQKKQr   Zpng)Z
extensionsc                 sJ   \         P                  P                  R 4       V P                  4       pVP	                  RR
R7       VP
                  P                  P                  R4       VP
                  P                  P                  ^4       VP
                  P                  P                  R4       VP                  RRRR7       VP                  4       pVP	                  RR
R7       VP
                  P                  P                  ^4       VP                  RRRRR7       R	# )ZdefaultZlog)ZxscaleZxlimr   FZin)axis	labelleftZ	directionT)r0   r1   r   r   N)r      )r+   r2   )r+   r   )r   ZstyleZuser!   r   r   r   r#   Zset_linewidthr   Ztick_params)Zfig_testZfig_refr(   s   && r	   #test_spine_nonlinear_data_positionsr3   V   s    IIMM)				BFF%gF&
 IINN,IINN  #IIOO  .NNuN=				BFF%gF&IIOO!!!$NNu5NEr   zspines_capstyle.pngc                  s    \         P                  ! R ^R7       \         P                  ! 4       w  rVP                  . 4       VP	                  . 4       R# )r   )Z	linewidthN)r   Zrcr,   
set_xticks
set_yticksr-   r.   r	   test_spines_capstyler6   k   s7     FF6R llnGCMM"MM"r   c                  s`   \         P                  ! 4       w  r\         P                  ! R R R7       VP                  \        P
                  ! ^
4      4       VP                  P                  R4       VP                  P                  P                  R4       VP                  P                  P                  R4       VP                  R4       VP                  P                  R4       VP                  P                  P                  R4       VP                  P                   P                  R4       VP#                  R4       VP                  P%                  . 4       VP                  P%                  . 4       \         P&                  ! 4        VP                  P                  pVP)                  4       P+                  VP-                  4       4      P/                  4       pVP                  P                  pVP)                  4       P+                  VP-                  4       4      P/                  4       pR# )	g333333?)r   r   r   Fzy labelr   zx labelN)Zoutwardi   )r   r,   Zsubplots_adjustr"   r    Zaranger$   r%   r   r   r#   r   Zset_visibleZ
set_ylabelr&   r   r   Z
set_xlabelZ	set_ticksZdrawZget_transformZtransform_pathZget_pathZget_extents)r'   r(   ZspineZ	spinebboxr)   r	   test_label_without_ticksr7   t   sn   llnGCS-GGBIIbMHH'IINN0IIOO&MM)HH)II!!/2IIMMe$MM)HHrHHrHHJIINNE##%44%+- 
 IIE##%44%+- r   zblack_axes.pngc                  sN   ^ \         P                  R&   R\         P                  R&   \         P                  ! ^ RR7      p V P                  R4      pVP	                  . 4       VP                  . 4       VP                  . 4       VP                  . 4       VP                  R4       R# )	r    zsavefig.pad_inchesZtightzsavefig.bbox)ZfigsizeN)   r8   )r    r    r2   r2   )r    r    r    )	r   ZrcParamsr   Zadd_axesZset_xticklabelsZset_yticklabelsr4   r5   Zset_facecolorr-   r.   r	   test_spines_black_axesr9      s     *+CLL%&#*CLL 
**Q
'C	l	#BrrMM"MM"Yr   c                  s    \         P                  ! 4       p V P                  R R7      pVP                  R,          pVP	                  R4       V P                  4        R# )Zpolar)Z
projectionZinnerN)r   r   r!   r   Zregister_axisZdraw_without_rendering)r'   r(   Zinner_spiner   r	   test_arc_spine_inner_no_axisr:      sI     **,C	G	,B))G$Kd#  r   )Znumpyr    r   Zmatplotlib.pyplotZpyplotr   Zmatplotlib.spinesr   Zmatplotlib.testing.decoratorsr   r   r   r*   r/   r3   r6   r7   r9   r:   r   r   r	   <module>r;      s       $ O.b ./0' 1'  ./0 1 (F )F( ()* ++: #$%
  &
 	!r   