
    h/%                     F    S SK Jr  SSKJr   " S S\R                  5      rg)    warn   )chartc                   p   ^  \ rS rSrSrSU 4S jjrSS jrS rS rS r	S r
S	 rS
 rS rS rS rSrU =r$ )ChartScatter   z6
A class for writing the Excel XLSX Scatter charts.


c                    > [         TU ]  5         Uc  0 nUR                  S5      U l        U R                  (       d  SU l        SU l        SU l        SU l        SU l        SU l        SU l	        S	S
SSSSSS.U l
        g)z
Constructor.

Nsubtypemarker_onlymidCatr   bTrightctrrlt)centerr   leftabovebelowtopbottom)super__init__getr   cross_betweenhoriz_val_axisval_axis_positionsmooth_allowedrequires_categorylabel_position_defaultlabel_positions)selfoptions	__class__s     kC:\Users\julio\OneDrive\Documentos\Trabajo\Ideas Frescas\venv\Lib\site-packages\xlsxwriter/chart_scatter.pyr   ChartScatter.__init__   s    
 	?G{{9-||(DL%!$"!% '.#	 
    c                 "    Uc  g[        S5        g)z
Create a combination chart with a secondary chart.

Note: Override parent method to add a warning.

Args:
    chart: The secondary chart to combine with the primary chart.

Returns:
    Nothing.

NzNCombined chart not currently supported with scatter chart as the primary chartr   )r$   r   s     r'   combineChartScatter.combine>   s     =#	
r)   c                 &    U R                  U5        g N)_write_scatter_chart)r$   argss     r'   _write_chart_typeChartScatter._write_chart_typeZ   s     	!!$'r)   c                    US   (       a  U R                  5       nOU R                  5       nU(       d  g SnU R                  nUS:X  a  SnUS:X  a  SnUS:X  a  SnSS0U l        US:X  a  S	nUS
:X  a  S	nSS0U l        U R	                  5         U R                  S5        U R                  U5        U H  nU R                  U5        M     U R                  U5        U R                  S5        g )Nprimary_axes
lineMarkerr   straight_with_markersstraighttypenonesmooth_with_markerssmoothMarkersmoothzc:scatterChart)
_get_primary_axes_series_get_secondary_axes_seriesr   default_marker_modify_series_formatting_xml_start_tag_write_scatter_style
_write_ser_write_axis_ids_xml_end_tag)r$   r0   seriesstyler   datas         r'   r/   !ChartScatter._write_scatter_charte   s     224F446F,, m# E-- Ej  E#)6"2D++"Eh"E#)6"2D 	&&(,- 	!!%( DOOD!  	T"*+r)   c                    U R                   nU =R                   S-  sl         U R                  S5        U R                  U5        U R                  U5        U R	                  U5        U R                  U5        U R                  UR                  S5      5        U R                  UR                  S5      5        U R                  UR                  S5      5        U R                  UR                  S5      5        U R                  UR                  S5      5        U R                  U5        U R                  U5        SU R                  ;   a  US   c  U R                  S	5        OU R                  US   5        U R!                  S5        g )
Nr   zc:sermarkerpointslabels	trendline
error_barsr<   T)series_indexrA   
_write_idx_write_order_write_series_name_write_sp_pr_write_markerr   _write_d_pt_write_d_lbls_write_trendline_write_error_bars_write_x_val_write_y_valr   _write_c_smoothrE   )r$   rF   indexs      r'   rC   ChartScatter._write_ser   sP    !!QG$ 	 	%  	' 	&! 	6::h/0 	H-. 	6::h/0 	fjj56 	vzz,78 	&! 	&! t||#x(8(@  &  !12'"r)   c                     U R                  S5        U R                  U R                  R                  S5      S5        U R	                  SS05        U R	                  SS05        U R                  U R                  U R                  U R                  SS.5        U R                  nSU l	        U R                  U R                  U R                  U R                  S	S.5        Xl	        U R                  U R                  U R                  U R                  SS.5        SU l	        U R                  U R                  U R                  U R                  S	S.5        U R                  U R                  5        U R                  S5        g )
Nz
c:plotArealayoutplotr4   r   r   r   )x_axisy_axisaxis_idspositionr   )rA   _write_layoutplotarear   r1   _write_cat_val_axisrb   rc   rd   r   _write_val_axisx2_axisy2_axis	axis2_idsrT   rE   )r$   tmps     r'   _write_plot_areaChartScatter._write_plot_area   sT   
 	L) 	4==,,X6? 	2323 	  ++++ MM		
 !!++++ MM		
 " 	  ,,,, NN		
  ,,,, NN		
 	$--(,'r)   c                 "   UR                  S5      nUR                  S5      nU R                  U   nU R                  S5        U R                  U5      nUS:X  a  U R	                  X$U5        OU R                  X$U5        U R                  S5        g )N
categoriescat_data_idzc:xValstr)r   formula_datarA   _get_data_type_write_str_ref_write_num_refrE   )r$   rF   formuladata_idrH   	data_types         r'   rZ   ChartScatter._write_x_val  s    **\***]+  )H% ''-	y9 y9(#r)   c                     UR                  S5      nUR                  S5      nU R                  U   nU R                  S5        U R                  X$S5        U R	                  S5        g )Nvaluesval_data_idzc:yValnum)r   rt   rA   rw   rE   )r$   rF   rx   ry   rH   s        r'   r[   ChartScatter._write_y_val  s\    **X&**]+  )H% 	G51(#r)   c                 2    SU4/nU R                  SU5        g )Nvalzc:scatterStyle)_xml_empty_tag)r$   r   
attributess      r'   rB   !ChartScatter._write_scatter_style)  s    cl^
,j9r)   c                     U R                   nUS:X  a,  U R                   H  nUS   S   (       a  M  SSSS.US'   M     g g )Nr   linedefinedg      @r   )widthr9   r   )r   rF   )r$   r   rF   s      r'   r@   &ChartScatter._modify_series_formatting/  sM     ,, m#++f~i00!% !#$&F6N & $r)   c                     U R                  S5        U R                  U5        U R                  S5        U R                  U5        U R                  S5        U R                  S5        g )Nzc:dPtzc:marker)rA   rQ   rT   rE   )r$   r]   points      r'   _write_d_pt_pointChartScatter._write_d_pt_point@  sZ     	G$ 	J' 	% *%'"r)   )	r   r?   r   r"   r#   r!   r    r   r   r.   )__name__
__module____qualname____firstlineno____doc__r   r+   r1   r/   rC   rn   rZ   r[   rB   r@   r   __static_attributes____classcell__)r&   s   @r'   r   r      sH     
D
8(/,b1#f<(|$($:"# #r)   r   N)warningsr    r   Chartr    r)   r'   <module>r      s     A#5;; A#r)   