HOME


sh-3ll 1.0
DIR:/opt/cloudlinux/venv/lib64/python3.11/site-packages/xarray/plot/__pycache__/
Upload File :
Current File : //opt/cloudlinux/venv/lib64/python3.11/site-packages/xarray/plot/__pycache__/utils.cpython-311.pyc
�

���h.��X�ddlZddlZddlZddlmZd
d�Zd�Zd�Z	d�Z
			dd�Zd�ZdS)�N�)�
basestring�default_colormap.csvc��ddlm}tjt|��}tj|d���j}|�d|��S)z#
    Returns viridis color map
    r)�LinearSegmentedColormapN)�header�viridis)	�matplotlib.colorsr�
pkg_resources�resource_stream�__name__�pd�read_csv�values�	from_list)�fnamer�f�cm_datas    �F/opt/cloudlinux/venv/lib/python3.11/site-packages/xarray/plot/utils.py�_load_default_cmapr	sW��:�9�9�9�9�9�	�%�h��6�6�A��k�!�D�)�)�)�0�G�"�,�,�Y��@�@�@�c��|���|k}|���|k}|r|rd}n|rd}n|rd}nd}|S)N�both�min�max�neither�rr)�	calc_data�vmin�vmax�
extend_min�
extend_max�extends      r�_determine_extendr$sd�������4�'�J������4�'�J���j�����	�����	��������Mrc���ddl}|sd}|dkrd}n	|dvrd}nd}t|��|zdz
}t||��}|j�|||���\}}	t|d	|��|_||	fS)
zB
    Build a discrete colormap and normalization of the data.
    rNrrrr�)r#�name)�
matplotlib�len�_color_palette�colors�from_levels_and_colors�getattrr')
�cmap�levelsr#�filled�mpl�ext_n�n_colors�pal�new_cmap�cnorms
          r�_build_discrete_cmapr7$s�����������
�������	�>�	!�	!�������6�{�{�U�"�Q�&�H�
��x�
(�
(�C��j�7�7���F�8�$�$�O�H�e��D�&�$�/�/�H�M��U�?�rc��ddlm}ddlm}t	jdd|��}t
|ttf��r=	ddl	m
}|||���}n�#t$r|||���}||��}Yn�wxYwt
|t��rl	ddl	m
}|||���}nb#ttf$rC	|�|��}n#t$r||g|���}YnwxYw||��}YnwxYw||��}|S)Nr)�ListedColormapg�?)�
color_palette)r3)�N)�matplotlib.pyplot�pyplotr
r9�np�linspace�
isinstance�list�tuple�seaborn.apionlyr:�ImportErrorr�
ValueError�get_cmap)r.r3�pltr9�colors_ir:r4s       rr*r*@s���#�#�#�#�#�#�0�0�0�0�0�0��{�1�b�(�+�+�H��$��u�
�&�&��	!�5�5�5�5�5�5��-��x�8�8�8�C�C���	!�	!�	!�"�>�$�(�3�3�3�D��$�x�.�.�C�C�C�		!����

�D�*�	%�	%��
	!�5�5�5�5�5�5��-��x�8�8�8�C�C���Z�(�		!�		!�		!�
:��|�|�D�)�)�����
:�
:�
:�%�~�t�f��9�9�9����
:�����$�x�.�.�C�C�C�		!�����d�8�n�n���JsH�A�"A9�8A9�B&�&C:�8C�
C:�C)�&C:�(C)�)C:�9C:FTc
��d}
ddl}tj|tj|����}|du}
d}|�d}d}|�|�d}
d}|�-|rtj||
��}n)|���}n|
rt||z
��}|�0|rtj|d|
z
��}n)|���}n|
rt||z
��}|
r|dkr|dkp|}nd}|r7|�0tt||z
��t||z
����}||}}||z
}||z
}|�|rd}nd}|dkrt��}|�Ut|t��r0|j�
|��}|�||��}|d|d	}}|�t|||��}|�t!||||��\}}	t#||||||	�
��S)av
    Use some heuristics to set good defaults for colorbar and range.

    Adapted from Seaborn:
    https://github.com/mwaskom/seaborn/blob/v0.6/seaborn/matrix.py#L158

    Parameters
    ==========
    plot_data: Numpy array
        Doesn't handle xarray objects

    Returns
    =======
    cmap_params : dict
        Use depends on the type of the plotting function
    g@rNFT�d�RdBu_rr	���)rr r.r#r/�norm)r(r>�ravelr�isnull�
percentiler�absrrr@�int�ticker�MaxNLocator�tick_valuesr$r7�dict)�	plot_datarr r.�center�robustr#r/r0r6�ROBUST_PERCENTILEr1r�possibly_divergent�center_is_none�vlim�	divergentrSs                  r�_determine_cmap_paramsr_fsh��&���������B�I�i�$8�$8�#8�9�:�:�I� �u�,���N�
�~�����	
��t�/�"���D��|��	#��=��,=�>�>�D�D��=�=�?�?�D�D�	�"��4�&�=�!�!���|��	#��=��C�2C�,C�D�D�D�D��=�=�?�?�D�D�	�"��4�&�=�!�!�����Q�h�.�T�A�X�E�~�3E�	�	��	��!��<��s�4�&�=�)�)�3�t�f�}�+=�+=�>�>�D��U�D�d��	�F�N�D��F�N�D��|��	��D�D��D��y���!�#�#�����f�c�"�"�	4��Z�+�+�F�3�3�F��'�'��d�3�3�F��A�Y��r�
�d��
�~�"�9�d�D�9�9��
��*�4����H�H���e��T��4���E�+�+�+�+rc����|�'|�%�jdkrtd����j\}}n?|�|�td���t�fd�||fD����rtd���||fS)zf
    Determine x and y labels. For use in _plot2d

    darray must be a 2 dimensional data array.
    NrzDataArray must be 2dz!cannot supply only one of x and yc3�*�K�|]
}|�jvV��dS)N)�coords)�.0�k�darrays  �r�	<genexpr>z#_infer_xy_labels.<locals>.<genexpr>�s*�����4�4��Q�f�m�
#�4�4�4�4�4�4rz$x and y must be coordinate variables)�ndimrE�dims�any)re�x�ys`  r�_infer_xy_labelsrl�s����	�y�Q�Y��;�!����3�4�4�4��{���1�1�	
��a�i��<�=�=�=�	�4�4�4�4�a��V�4�4�4�	4�	4�A��?�@�@�@��a�4�Kr)r)	NNNNFNNTN)
r�numpyr>�pandasr�
core.pycompatrrr$r7r*r_rl�rr�<module>rqs���������������&�&�&�&�&�&�
A�
A�
A�
A�������8#�#�#�LBF�=A�;?�a+�a+�a+�a+�H����r