坐标参考系#
的 cartopy.crs.CRS
类是制图的核心,制图中的所有坐标参考系都有 CRS
作为父类,这意味着所有投影都具有如下所述的接口。
- class cartopy.crs.CRS(proj4_params, globe=None)[源代码]
使用proj定义坐标参考系。的
cartopy.crs.CRS
类是制图的核心,制图中的所有坐标参考系都有CRS
作为家长班。- 参数:
- as_geocentric()[源代码]
返回与此CRS具有相同椭圆/基准的新地心CRS。
- as_geodetic()[源代码]
返回与此CRS具有相同椭圆/基准的新Geodetic CRS。
- transform_point(x, y, src_crs)[源代码]
在给定的源坐标系中变换给定的float 64坐标对 (
src_crs
),到这个坐标系。- 参数:
x -- x坐标,在
src_crs
坐标,要转换y -- y坐标,在
src_crs
坐标,要转换src_crs -- 实例
CRS
它代表的坐标系x
和y
.trap -- 是否应捕获“纬度或经度超标”和“容差条件误差”的项目错误。
- 返回:
(x, y) in this coordinate system
- transform_points(src_crs, x, y[, z])[源代码]
在给定源坐标系中变换给定坐标 (
src_crs
),到这个坐标系。- 参数:
src_crs -- 实例
CRS
它代表的坐标系x
,y
和z
.x -- x坐标(数组),在
src_crs
坐标,要转换。 可能是一维或二维的。y -- y坐标(数组),在
src_crs
坐标,要转换。 它的形状必须与x的形状相匹配。z (optional) -- z坐标(数组),在
src_crs
坐标,要转换。 切换到无。如果提供,则其形状必须与x的形状匹配。trap -- 是否应捕获“纬度或经度超标”和“容差条件误差”的项目错误。
- 返回:
形状数组
x.shape + (3, )
在这个坐标系中。
- transform_vectors(src_proj, x, y, u, v)[源代码]
用给定源坐标系中的坐标变换给定的载体分量 (
src_proj
),到这个坐标系。必须给出相对于源投影的坐标参考系(网格向东,网格向北)的方向。- 参数:
src_proj -- 的
CRS.Projection
它表示定义了这些载体的坐标系。x -- 源投影中载体的x坐标。
y -- 源投影中载体的y坐标。
u -- 载体的网格向东分量。
v -- 载体的网格北向分量。
备注
x、y、u和v可以是1维或2维的,但必须都具有匹配的形状。
- 返回:
ut, vt ( The transformed vector components. )
备注
用于变换载体的算法是一种逼近而不是精确变换,但准确性应该足够好以实现可视化目的。
的 Globe
类用于封装任何Cartopy CRS的基础球体或椭圆体。所有CRS都有相关的 Globe
,尽管通常这只是默认的 Globe
其代表参考椭圆体(即“wgs 84”)。
- class cartopy.crs.Globe(datum=None, ellipse='WGS84', semimajor_axis=None, semiminor_axis=None, flattening=None, inverse_flattening=None, towgs84=None, nadgrids=None)[源代码]
定义椭圆体,并(可选)定义如何将其与现实世界关联起来。
- 参数:
datum -- 投影“基准”定义。切换到无。
ellipse -- 项目“埃尔普斯”的定义。我是WGS 84
semimajor_axis -- 球体/椭圆体的半长轴。 切换到无。
semiminor_axis -- 椭圆体的半小轴。 切换到无。
flattening -- 椭圆体的压平。 切换到无。
inverse_flattening -- 椭圆体的反向压平。 切换到无。
towgs84 -- 传递到Proj定义。 切换到无。
nadgrids -- 传递到Proj定义。 切换到无。
最常见的 CRS
子类本身就是另一个抽象类; cartopy.crs.Projection
类代表一个2维坐标系,可以直接绘制为地图(即在一张扁平的纸上)。 Projection
是中所有投影的父类 Cartopy投影列表 .
- class cartopy.crs.Projection(*args, **kwargs)[源代码]
定义具有平坦布局和欧几里得距离的投影坐标系。
- 参数:
- project_geometry(geometry, src_crs=None)[源代码]
将给定的几何体投影到此投影中。
- 参数:
geometry -- 要(重新)投影的几何图形。
src_crs (optional) -- 来源CRS。 切换到无。 如果SRC_crs为“无”,则假设源CRS是目标CRS的大地测量版本。
- 返回:
geometry --投影结果(匀称的几何形状)。
- quick_vertices_transform(vertices, src_crs)[源代码]
在可能的情况下,返回从给定的形状顶点数组转换到此CRS的顶点数组
(n, 2)
以及源CRS。备注
此方法可能返回None,以指示无法快速变换顶点,需要进行更复杂的几何变换(请参见
cartopy.crs.Projection.project_geometry()
).
有几个非 -Projection
亚类。这些代表3维的坐标参考系,无法直接在一张纸上绘制。
- class cartopy.crs.Geodetic(globe=None)[源代码]
定义具有球形布局的纬度/经度坐标系,地理距离和坐标以度为单位测量。
- 参数:
globe (A
cartopy.crs.Globe
, optional) -- 指定为“WGS 84”基准。
- class cartopy.crs.Geocentric(globe=None)[源代码]
定义地心坐标系,其中x、y、z是距地球中心的直角坐标。
- 参数:
globe (A
cartopy.crs.Globe
, optional) -- 指定为“WGS 84”基准。
- class cartopy.crs.RotatedGeodetic(pole_longitude, pole_latitude, central_rotated_longitude=0.0, globe=None)[源代码]
定义具有球形布局和地理距离的旋转纬度/经度坐标系。
坐标以度为单位测量。
该类使用proj执行ob_tran操作,使用pole_longitude设置lon_0,然后基于pole_latitude和central_rotated_longitude执行两次旋转。这相当于将新极点设置为由globe定义的GeogCRS中的pole_latitude和pole_longitude值定义的位置,然后使用central_rotated_longitude值围绕其极点旋转此新CRS。
- 参数:
pole_longitude -- 极点经度位置,以未旋转度数为单位。
pole_latitude -- 极点纬度位置,以未旋转度数为单位。
central_rotated_longitude (optional) -- 绕新极点的纵向旋转,单位为度。 0到0。
globe (optional) -- A
cartopy.crs.Globe
. 指定为“WGS 84”基准。
还有一个函数,用于使用指定的代码调用epsg.io,返回相应的制图投影,见下文。
- cartopy.crs.epsg(code)[源代码]
返回与给定EPSG代码对应的投影。
EPSG代码必须对应于“投影坐标系”,因此定义“大地坐标系”的EPSG代码(例如4326(WGS-84))将不起作用。
备注
转换由pyroj.CRS执行。