CRS¶
pyproj.CRS¶
-
class
pyproj.crs.
CRS
(projparams=None, **kwargs)[源代码]¶ Python 坐标参考系经理。
该功能基于其他出色的项目:
- https://github.com/opendatacube/datacube-core/blob/83bae20d2a2469a6417097168fd4ede37fd2abe5/datacube/utils/geometry/_base.py
- https://github.com/mapbox/rasterio/blob/c13f0943b95c0eaa36ff3f620bd91107aa67b381/rasterio/_crs.pyx
-
__init__
(projparams=None, **kwargs)[源代码]¶ 使用wkt字符串、proj、4字符串、proj.4字典或proj.4关键字参数初始化CRS类实例。
CRS投影控制参数必须在字典“projParams”中提供,或者作为关键字参数提供。有关指定投影参数的详细信息,请参阅proj.4文档(https://github.com/osgeo/proj.4/wiki)。
示例用法:
>>> from pyproj import CRS >>> crs_utm = CRS.from_user_input(26915) >>> crs_utm <CRS: epsg:26915> Name: NAD83 / UTM zone 15N Ellipsoid: - semi_major_metre: 6378137.00 - semi_minor_metre: 6356752.31 - inverse_flattening: 298.26 Area of Use: - name: North America - 96°W to 90°W and NAD83 by country - bounds: (-96.0, 25.61, -90.0, 84.0) Prime Meridian: - longitude: 0.0000 - unit_name: degree - unit_conversion_factor: 0.01745329 Axis Info: - Easting[E] (east) EPSG:9001 (metre) - Northing[N] (north) EPSG:9001 (metre) <BLANKLINE> >>> crs_utm.area_of_use.bounds (-96.0, 25.61, -90.0, 84.0) >>> crs_utm.ellipsoid.inverse_flattening 298.257222101 >>> crs_utm.ellipsoid.semi_major_metre 6378137.0 >>> crs_utm.ellipsoid.semi_minor_metre 6356752.314140356 >>> crs_utm.prime_meridian.unit_name 'degree' >>> crs_utm.prime_meridian.unit_conversion_factor 0.017453292519943295 >>> crs_utm.prime_meridian.longitude 0.0 >>> crs = CRS(proj='utm', zone=10, ellps='WGS84') >>> crs.to_proj4() '+proj=utm +zone=10 +ellps=WGS84 +units=m +no_defs +type=crs' >>> crs.to_wkt() 'PROJCRS["unknown",BASEGEOGCRS["unknown",DATUM["Unknown based on WGS84 ellipsoid",ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1],ID["EPSG",7030]]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8901]]],CONVERSION["UTM zone 10N",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-123,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",0,LENGTHUNIT["metre",1],ID["EPSG",8807]],ID["EPSG",16010]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1,ID["EPSG",9001]]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1,ID["EPSG",9001]]]]' >>> geod = crs.get_geod() >>> "+a={:.0f} +f={:.8f}".format(geod.a, geod.f) '+a=6378137 +f=0.00335281' >>> crs.is_projected True >>> crs.is_geographic False >>> crs.is_valid True
-
area_of_use
¶ 返回: AreaOfUse :r类型:具有关联属性的使用对象的CRS区域。
-
axis_info
¶ 返回: [list[AxisInfo]] :r类型:轴信息列表。
-
datum
¶ 返回: :obj:`pyproj.CRS` :r类型:作为CRS的基准。
-
ellipsoid
¶ 返回: 椭球体 :r类型:具有关联属性的CRS椭球体对象。
-
classmethod
from_epsg
(code)[源代码]¶ 根据EPSG代码生成CRS
参数: code (int or str) -- 一个EPSG代码。字符串将转换为整数。 笔记
输入代码没有根据EPSG数据库进行验证。
返回: 返回类型: CRS
-
classmethod
from_string
(proj_string)[源代码]¶ 从epsg、proj或wkt字符串生成crs
参数: proj_string (str) -- epsg、proj或wkt字符串。 返回: 返回类型: CRS
-
classmethod
from_user_input
(value)[源代码]¶ 从各种输入生成CRS
从epsg、从proj或从字符串发送到
参数: value (obj) -- python int、dict或str。 返回: 返回类型: CRS
-
is_geocentric
¶ 返回: bool :rtype:true,如果以地心(X/Y)坐标投影
-
is_geographic
¶ 返回: bool :rtype:true,如果以地理(lon/lat)坐标投影。
-
is_projected
¶ 返回: bool :rtype:true,如果投影是投影类型。
-
is_valid
¶ 返回: bool :rtype:true,如果投影是有效类型。
-
prime_meridian
¶ 返回: PrimeMeridian :r类型:具有相关属性的CRS Prime Meridian对象。
-
to_epsg
()¶ 返回与投影最匹配的epsg代码。
参数: min_confidence (int, optional) -- 介于0-100之间的值,其中100是最有信心的值。默认值为70。 返回: int或无 返回类型: The best matching EPSG code matching the confidence level.
-
to_geodetic
()¶ 返回一个新的CRS实例,该实例是当前投影的地理(lat/lon)坐标版本
-
to_proj4
()¶ 将投影转换为项目4字符串。
参数: version (int) -- 项目4输出的版本。默认值为4。 返回: str 返回类型: The proj.4 string.
-
to_wkt
()¶ 将投影转换为WKT字符串。
参数: version (str) -- WKT输出的版本。默认值为WKT2。 返回: str 返回类型: The WKT string.
pyproj.crs.is_wkt¶
-
pyproj.crs.
is_wkt
()¶ 检查输入投影字符串是否为众所周知的文本格式。
参数: proj_string (str) -- 投影字符串。 返回: bool 返回类型: True if the string is in the Well-Known Text format