HEX
Server: LiteSpeed
System: Linux standart9.isimtescil.net 3.10.0-962.3.2.lve1.5.26.7.el7.x86_64 #1 SMP Wed Oct 2 07:53:12 EDT 2019 x86_64
User: karalev (5310)
PHP: 8.2.29
Disabled: NONE
Upload Files
File: //opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyo
�
a;Mc@shddlZddlZddljZddlZejZddlmZddlm	Z	ddl
mZddlm
Z
ddljZddljZddlmZmZmZmZmZddlmZmZmZmZmZm Z m!Z!defd	��YZ"d
e"fd��YZ#de"fd
��YZ$de"fd��YZ%de"fd��YZ&dS(i����N(tAxes(tcbook(tCircle(tPath(t	FormattertLocatortNullLocatortFixedLocatort
NullFormatter(tAffine2DtAffine2DBasetBboxtBboxTransformTotIdentityTransformt	TransformtTransformWrappertGeoAxescBseZdZdefd��YZdZd�Zd�Zd�Zd�Z	dd	�Z
d
�Zd�Zdd�Z
d
�Zd�Zd�Zd�Zd�ZeZd�ZeZd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�ZRS(s;
    An abstract base class for geographic projections
    tThetaFormattercBs&eZdZdd�Zdd�ZRS(s�
        Used to format the theta tick labels.  Converts the native
        unit of radians into degrees and adds a degree symbol.
        g�?cCs
||_dS(N(t	_round_to(tselftround_to((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyt__init__scCsT|tjd}t||j�|j}tdrHtdrHd|Sd|SdS(Ng�f@stext.usetexstext.latex.unicodes
$%0.0f^\circ$u%0.0f°(tnptpitroundRtrcParams(Rtxtpostdegrees((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyt__call__s
N(t__name__t
__module__t__doc__RtNoneR(((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyRsiKcCs2tj|�|_tj|�|_|j�dS(N(tmaxistXAxistxaxistYAxistyaxist_update_transScale(R((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyt
_init_axis(scCs�tj|�|jd�|jd�|jd�|jjt��|jjt��|jj	d�|jj	d�|jj
dt�|jt
d�tj|tjtj�tj|tjdtjd�dS(NiiiKtnonetlabel1Ons	axes.gridg@(Rtclatset_longitude_gridtset_latitude_gridtset_longitude_grid_endsR$tset_minor_locatorRR&tset_ticks_positiontset_tick_paramstTruetgridRtset_xlimRRtset_ylim(R((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR+0s



cCs�|j|j�|_|j�|_t|j�|_|j|j|j|_t	�j
d|jd�jd|j�|_
|j
|j|_t	�j
dd�|jt	�jdd�|_t	�j
dd�|jt	�jdd�|_t	�j
tjdd�jtjd�}t	�j
dd�}||j|_||j||j|j}|t	�jdd�|_|t	�jdd�|_dS(	Ng�?g@gg@g�g�������?g �g @(t_get_core_transformt
RESOLUTIONttransProjectiont_get_affine_transformttransAffineRtbboxt	transAxest	transDataR	tscalet_longitude_capt	translatet_xaxis_pretransformt_xaxis_transformt_xaxis_text1_transformt_xaxis_text2_transformRRt_yaxis_transformt_yaxis_text1_transformt_yaxis_text2_transform(Rt
yaxis_stretchtyaxis_spacetyaxis_text_base((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyt_set_lim_and_transformsCs2

	
,


cCsv|jd�}|jtjdf�\}}|jdtjdf�\}}t�jd|d|�jdd�S(Niig@g�?(R6ttransform_pointRRR	R>R@(Rt	transformtxscalet_tyscale((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR9vs"	R3cCs|jS(N(RB(Rtwhich((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pytget_xaxis_transform~scCs|jddfS(Ntbottomtcenter(RC(Rtpad((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pytget_xaxis_text1_transform�scCs|jddfS(NttopRT(RD(RRU((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pytget_xaxis_text2_transform�scCs|jS(N(RE(RRQ((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pytget_yaxis_transform�scCs|jddfS(NRTtright(RF(RRU((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pytget_yaxis_text1_transform�scCs|jddfS(NRTtleft(RG(RRU((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pytget_yaxis_text2_transform�scCs
tdd�S(Ng�?(g�?g�?(R(R((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyt_gen_axes_patch�scCsitjj|dd�d6S(Ng�?tgeo(g�?g�?(tmspinestSpinetcircular_spine(R((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyt_gen_axes_spines�scOs|ddkrt�ndS(Nitlinear(tNotImplementedError(Rtargstkwargs((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyt
set_yscale�scOs@tj|tjtj�tj|tjdtjd�dS(Ng@(RR4RRR5(RRfRg((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR4�scCsx|dtj}|dtj}|dkr7d}nd}|dkrRd}nd}dt|�|t|�|fS(s0return a format string formatting the coordinateg�f@gtNtStEtWu%f°%s, %f°%s(RRtabs(Rtlongtlattnstew((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pytformat_coord�s		cCsjd|d}|jjttjtjtj|t�dd!��||_|jj|j	|��dS(sH
        Set the number of degrees between each longitude grid.
        g�v@ii����N(
R$tset_major_locatorRRtlinspaceRR2t_logitude_degreestset_major_formatterR(RRtnumber((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR,�s	*	cCsrd|d}|jjttjtjdtjd|t�dd!��||_|jj|j	|��dS(sH
        Set the number of degrees between each longitude grid.
        g�f@ig@i����N(
R&RsRRRtRR2t_latitude_degreesRvR(RRRw((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR-�s	2	cCsH|tjd|_|jj�jd|jd�jd|j�dS(sS
        Set the latitude(s) at which to stop drawing the longitude grids.
        g�f@g�?g@gN(RRR?RAtclearR>R@(RR((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR.�scCsdS(s=
        Return the aspect ratio of the data itself.
        g�?((R((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pytget_data_ratio�scCstS(s?
        Return True if this axes support the zoom box
        (tFalse(R((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pytcan_zoom�scCsdS(N((RRtytbutton((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyt	start_pan�scCsdS(N((R((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pytend_pan�scCsdS(N((RR~tkeyRR}((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pytdrag_pan�s(RRR RRR7R(R+RKR9RRRVRXRYR[R]R^RcRht
set_xscaleR4R5RrR,R-R.RzR|RR�R�(((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyRs8			3													
				t
AitoffAxescBsLeZdZdefd��YZdefd��YZd�Zd�ZRS(taitofftAitoffTransformcBs�eZdZdZdZeZd�Zd�Ze	jje_eZ
e	j
je
_d�Ze	jje_eZe	jje_d�Z
e	j
je
_RS(s,
        The base Aitoff transform.
        icCstj|�||_dS(s�
            Create a new Aitoff transform.  Resolution is the number of steps
            to interpolate between each input line segment to approximate its
            path in curved Aitoff space.
            N(RRt_resolution(Rt
resolution((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR�s
c
Cs�|dd�dd�f}|dd�dd�f}|d}tj|�}tj|tj|��}tj|dk|�}tj|�|}|tj|�|}tj|�|}	|jd�|	jd�tj|j�|	j�fd�S(Niiig@g(	Rtcostarccostmatmasked_wheretsintset_fill_valuetconcatenatetfilled(
Rtllt	longitudetlatitudet	half_longtcos_latitudetalphat
sinc_alphaRR}((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyRM�s


cCs7|j}|j|j�}t|j|j�|j�S(N(tverticestinterpolatedR�RRMtcodes(RtpathR�tipath((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyttransform_paths	cCstj|j�S(N(R�tInvertedAitoffTransformR�(R((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pytinverted s(RRR t
input_dimstoutput_dimsR{tis_separableRRMRttransform_non_affineR�ttransform_path_non_affineR�(((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR��s					R�cBsSeZdZdZeZd�Zd�Zejj	e_	d�Z
ej
j	e
_	RS(icCstj|�||_dS(N(RRR�(RR�((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR)s
cCs|S(N((Rtxy((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyRM-scCstj|j�S(N(R�R�R�(R((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR�2s(RRR�R�R{R�RRMRR R�(((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR�$s			cOsJtjd|_tj|||�|jddddd�|j�dS(Ng@g�?t
adjustabletboxtanchortC(RRR?RRt
set_aspectR+(RRfRg((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR6scCs
|j|�S(N(R�(RR�((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR6<s(RRtnameRR�R�RR6(((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR��s
6	t
HammerAxescBsLeZdZdefd��YZdefd��YZd�Zd�ZRS(thammertHammerTransformcBs�eZdZdZdZeZd�Zd�Ze	jje_eZ
e	j
je
_d�Ze	jje_eZe	jje_d�Z
e	j
je
_RS(s,
        The base Hammer transform.
        icCstj|�||_dS(s�
            Create a new Hammer transform.  Resolution is the number of steps
            to interpolate between each input line segment to approximate its
            path in curved Hammer space.
            N(RRR�(RR�((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyRKs
c
Cs�|dd�dd�f}|dd�dd�f}|d}tj|�}tjd�}tjd|tj|��}d||tj|�|}|tj|�|}	tj||	fd�S(Niiig@g�?(RR�tsqrtR�R�(
RR�R�R�R�R�tsqrt2R�RR}((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyRMTs
 cCs7|j}|j|j�}t|j|j�|j�S(N(R�R�R�RRMR�(RR�R�R�((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR�fs	cCstj|j�S(N(R�tInvertedHammerTransformR�(R((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR�os(RRR R�R�R{R�RRMRR�R�R�R�(((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR�Cs			
		R�cBsSeZdZdZeZd�Zd�Zejj	e_	d�Z
ej
j	e
_	RS(icCstj|�||_dS(N(RRR�(RR�((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyRxs
c	Cs�|dd�dd�f}|dd�dd�f}d|}d|}tjd||||�}dtj||dd||d�}tj||�}tj||fd�S(Niiig�?g�?g�?g@(RR�tarctantarcsinR�(	RR�RR}t	quarter_xthalf_ytzR�R�((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyRM|s

+cCstj|j�S(N(R�R�R�(R((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR��s(RRR�R�R{R�RRMRR R�(((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR�ss		
	cOsJtjd|_tj|||�|jddddd�|j�dS(Ng@g�?R�R�R�R�(RRR?RRR�R+(RRfRg((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR�scCs
|j|�S(N(R�(RR�((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR6�s(RRR�RR�R�RR6(((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR�@s
0	t
MollweideAxescBsLeZdZdefd��YZdefd��YZd�Zd�ZRS(t	mollweidetMollweideTransformcBs�eZdZdZdZeZd�Zd�Ze	jje_eZ
e	j
je
_d�Ze	jje_eZe	jje_d�Z
e	j
je
_RS(s/
        The base Mollweide transform.
        icCstj|�||_dS(s�
            Create a new Mollweide transform.  Resolution is the number of steps
            to interpolate between each input line segment to approximate its
            path in curved Mollweide space.
            N(RRR�(RR�((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR�s
cs!�fd�}|dd�dd�f}|dd�dd�f}tjtj|��d|}||�\}}x>tj|�r�|tj||d�7}||�\}}q|W|d}dtjd�|tj|�tj}	tjd�tj|�}
tj|	|
fd�S(Ncs?|tj|��dtj|�}|t|�dkfS(Nig����MbP?(RR�R�Rm(tthetatdelta(tpi_sin_l(sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pytd�s)iiig@(RRR�tanytwhereR�R�R�(RR�R�R�R�R�R�tlarge_deltatauxRR}((R�sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyRM�s

+cCs7|j}|j|j�}t|j|j�|j�S(N(R�R�R�RRMR�(RR�R�R�((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR��s	cCstj|j�S(N(R�tInvertedMollweideTransformR�(R((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR��s(RRR R�R�R{R�RRMRR�R�R�R�(((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR��s					R�cBsSeZdZdZeZd�Zd�Zejj	e_	d�Z
ej
j	e
_	RS(icCstj|�||_dS(N(RRR�(RR�((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR�s
cCs|S(N((RR�((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyRM�scCstj|j�S(N(R�R�R�(R((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR��s(RRR�R�R{R�RRMRR R�(((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR��s			cOsJtjd|_tj|||�|jddddd�|j�dS(Ng@g�?R�R�R�R�(RRR?RRR�R+(RRfRg((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR�scCs
|j|�S(N(R�(RR�((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR6�s(RRR�RR�R�RR6(((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR��s
7	tLambertAxescBs^eZdZdefd��YZdefd��YZd�Zd�Zd�Zd�Z	RS(	tlamberttLambertTransformcBs�eZdZdZdZeZd�Zd�Ze	jje_eZ
e	j
je
_d�Ze	jje_eZe	jje_d�Z
e	j
je
_RS(s-
        The base Lambert transform.
        icCs,tj|�||_||_||_dS(s�
            Create a new Lambert transform.  Resolution is the number of steps
            to interpolate between each input line segment to approximate its
            path in curved Lambert space.
            N(RRR�t_center_longitudet_center_latitude(Rtcenter_longitudetcenter_latitudeR�((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR�s
		cCs4|dd�dd�f}|dd�dd�f}|j}|j}tj|�}tj|�}||}tj|�}	dtj|�|tj|�||	}
tj|
dkd|
�}
tjd|
�}||tj|�}|tj|�|tj|�||	}
tj||
fd�S(Niiig�?ggV瞯�<g@(R�R�RR�R�R�R�R�(RR�R�R�tclongtclattcos_lattsin_latt	diff_longt
cos_diff_longtinner_ktkRR}((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyRMs 		
cCs7|j}|j|j�}t|j|j�|j�S(N(R�R�R�RRMR�(RR�R�R�((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR�s	cCstj|j|j|j�S(N(R�tInvertedLambertTransformR�R�R�(R((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR�%s(RRR R�R�R{R�RRMRR�R�R�R�(((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR��s				R�cBsSeZdZdZeZd�Zd�Zejj	e_	d�Z
ej
j	e
_	RS(icCs,tj|�||_||_||_dS(N(RRR�R�R�(RR�R�R�((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR1s
		cCsA|dd�dd�f}|dd�dd�f}|j}|j}tj||||�}tj|dkd|�}dtjd|�}tj|�}tj|�}	tj|	tj|�||tj|�|�}
|tj|||tj|�|	|tj|�|�}tj	||
fd�S(Niiigg��&�.>g@g�?(
R�R�RR�R�R�R�R�R�R�(RR�RR}R�R�tptctsin_ctcos_cRoRn((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyRM7s			8cCstj|j|j|j�S(N(R�R�R�R�R�(R((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR�Js(RRR�R�R{R�RRMRR R�(((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR�,s			cOsttjd|_|jdd�|_|jdd�|_tj|||�|jddddd	�|j	�dS(
Ng@R�gR�tequalR�R�R�R�(
RRR?tpopR�R�RRR�R+(RRfRg((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyRQscCs$tj|�|jjt��dS(N(RR+R&RvR(R((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR+Ys
cCs|j|j|j|�S(N(R�R�R�(RR�((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR6]scCst�jd�jdd�S(Ng�?g�?(R	R>R@(R((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR9cs		(
RRR�RR�R�RR+R6R9(((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyR��s=%			('tmathtnumpyRtnumpy.maR�t
matplotlibRtmatplotlib.axesRRtmatplotlib.patchesRtmatplotlib.pathRtmatplotlib.spinestspinesR`tmatplotlib.axistaxisR"tmatplotlib.tickerRRRRRtmatplotlib.transformsR	R
RRR
RRRR�R�R�R�(((sM/opt/alt/python27/lib64/python2.7/site-packages/matplotlib/projections/geo.pyt<module>s"	(4�UVV