投影坐标系简介

地球椭球体表面也是个曲面,而我们日常生活中的地图及量测空间通常是二维平面,因此在地图制图和线性量测时首先要考虑把曲面转化成平面。由于球面上任何一点的位置是用地理坐标(λ,φ)表示的,而平面上的点的位置是用直角坐标(X,Y)表示的,所以要想将地球表面上的点转移到平面上,必须采用一定的方法来确定地理坐标与平面直角坐标或极坐标之间的关系。这种在球面和平面之间建立点与点之间函数关系的数学方法,就是地图投影方法。

构成

投影坐标系使用基于 X,Y 值的坐标系统来描述地球上某个点所处的位置。这个坐标系是从地球的近似椭球体投影得到的,它对应于某个地理坐标系。投影坐标系主要由 地理坐标系、投影方法和线性单位 构成。
  

线性单位

单位 中文对照 每单位长度(m)
metre 1
Clarke’s link 克拉克令 0.201166195164
Gold Coast foot 黄金海岸英尺 0.304799710181509
US survey foot 美国测量英尺 0.304800609601219
foot 英尺 0.3048
Clarke’s foot 克拉克英尺 0.3047972654
link 0.201168
British chain (Sears 1922 truncated) 英国测链(1922年废弃) 20.116756
Clarke’s yard 克拉克码 0.9143917962
kilometre 千米 1000
Indian yard 印度码 0.914398530744441
British chain (Benoit 1895 B) 英国测链(贝诺伊特1895 B) 20.1167824943759
British yard (Sears 1922) 英国码(希尔斯 1922) 0.914398414616029
German legal metre 德国法定米 1.0000135965
British chain (Sears 1922) 英国测链(希尔斯 1922) 20.1167651215526
British foot (Sears 1922) 英国英尺(希尔斯 1922) 0.304799471538676

投影方法

常用的投影长度单位如下:

投影方法 中文对照
Transverse_Mercator 横轴墨卡托投影
Oblique_Stereographic 斜球面投影
Transverse_Mercator_South_Orientated 横轴墨卡托投影(南向)
Hotine_Oblique_Mercator_Azimuth_Center 洪特尼斜轴墨卡托方位角中心投影
Lambert_Conformal_Conic_1SP 兰伯特等角圆锥投影(1 标准纬线)
Krovak 克罗瓦克投影
Cassini_Soldner 卡西尼-索尔德纳投影
Lambert_Conformal_Conic_2SP 兰伯特等角圆锥投影(2 标准纬线)
Lambert_Azimuthal_Equal_Area 兰伯特斜轴等面积投影
Lambert_Conic_Conformal_(West_Orientated) 兰伯特圆锥等角投影(西向)
Mercator_1SP 墨卡托投影(1 标准纬线)
Bonne_(South_Orientated) 博恩投影(南向)
Albers_Conic_Equal_Area 阿尔伯斯圆锥等面积投影(正轴等积割圆锥投影)
Polar_Stereographic_(variant_C) 极球面投影(C 变体)
Polar_Stereographic 极球面投影
Hotine_Oblique_Mercator 洪特尼斜轴墨卡托投影
Hyperbolic Cassini-Soldner 卡西尼-索尔德纳双曲线投影
Azimuthal_Equidistant 等距离方位投影
Mercator_2SP 墨卡托投影(2 标准纬线)
Cylindrical_Equal_Area 圆柱等面积投影
Equirectangular 球面投影
Guam Projection 关岛投影
Krovak_Modified 改良克洛瓦尔投影
Krovak_Modified_(North_Orientated) 改良克洛瓦尔投影(北向)
Polyconic 多圆锥投影
Lambert Conic Conformal (2SP Michigan) 兰伯特圆锥等角投影(2 标准纬线,密歇根州)
Colombia Urban 哥伦比亚城市投影
Tunisia_Mapping_Grid 突尼斯地图网格投影
Lambert_Conic_Near-Conformal 兰伯特圆锥近等角投影
New_Zealand_Map_Grid 新西兰地图网格投影
Laborde_Oblique_Mercator 拉伯德斜墨卡托投影
Lambert_Conformal_Conic_2SP_Belgium 兰伯特等角圆锥投影(2 标准纬线,比利时)
Transverse_Mercator_Zoned_Grid_System 横向墨卡托分区网格投影系统

地理坐标系

地理坐标系是使用三维球面来定义地球表面位置,以实现通过经纬度对地球表面点位引用的坐标系。一个地理坐标系包括 角度测量单位、本初子午线和参考椭球体/基准面 三部分。在球面系统中,水平线是等纬度线或纬线。垂直线是等经度线或经线。

常见的 WGS 84、CGCS 2000 等都属于地理坐标系。

gma 2 坐标参考系统简介

gma 简介

gma 是一个基于 Python 的地理、气象数据快速处理和数据分析函数包(Geographic and Meteorological Analysis,gma)。gma 1.x 网站:gma.luosgeo.com。

下文使用 gma 2 绘制 20 余种投影下的世界地图。

gma 的主要功能

气候气象(例如 SPEI、SPI、ET0 等)
遥感指数(例如 NDVI、EVI、TVDI 等)
数学运算(例如 数据平滑、评估、滤波、拉伸、增强变换等)
系统交互(例如 获取路径、重命名、压缩等操作)
空间杂项(例如 计算空间距离、面积计算,坐标转换、空间插值等操作)
栅格处理(例如 栅格镶嵌、裁剪、重采样、重投影、格式转换、数据融合等)
栅格分析(例如 DEM 坡度、坡向、阴影、等值线等计算)
矢量处理(例如 矢量裁剪、擦除、交集、融合、重投影等)
地图工具(例如 栅格、矢量数据绘图,指北针、比例尺等生成,坐标系定义等)

gma 2 下载

目前,gma 2 为前期测试版本,版本号 2.0.0a1,下载地址:

​链接:https://pan.baidu.com/s/17TGMjNi7ZU0Ln1KvcCtvqQ?pwd=tz0s
提取码:tz0s

坐标参考系统模块的主要功能

目前,gma 2 的坐标参考系统(gma.crs)提供:

1. 基准面(gma.crs.Datum)

创建一个基准面。

2. 椭球体(gma.crs.Ellipsoid)

创建一个椭球体。

3. 地理坐标系(gma.crs.GeogCS)

创建一个地理坐标系。

4. 投影坐标系(gma.crs.ProjCS)

创建一个投影坐标系。

5. 内置参数

椭球体(gma.crs.Ellips)

创建一个椭球体。也提供一些内置的椭球体,包括:

椭球体名称 长半轴(m) 反扁率
Airy1830 6377563.396 299.325
AiryModified1849 6377340.189 299.325
AustralianNationalSpheroid 6378160 298.25
AverageTerrestrialSystem1977 6378135 298.257
Bessel1841 6377397.155 299.1528
BesselModified 6377492.018 299.1528
BesselNamibia 6377483.865 299.1528
CGCS2000 6378137 298.2572
Clarke1858 6378293.645 294.2607
Clarke1866 6378206.4 294.9787
Clarke1880 6378249.145 293.4663
Clarke1880ARC 6378249.145 293.4663
Clarke1880Benoit 6378300.789 293.4663
Clarke1880ING 6378249.2 293.466
Clarke1880INTFoot 6378306.37 293.4663
Clarke1880RGS 6378249.145 293.465
Danish1876 6377019.27 300
Everest1830_1962D 6377299.366 300.8017
Everest1830_1967D 6377276.345 300.8017
Everest1830_1973A 6377301.243 300.8017
Everest1830_1975D 6377298.556 300.8017
Everest1830_RSO1969 6377299.151 300.8017
Everest1830Definition 6377295.664 300.8017
Everest1830Modified 6377304.063 300.8017
GRS1967 6378160 298.2472
GRS1967Modified 6378160 298.25
GRS1980 6378137 298.2572
GSK2011 6378136.5 298.2564
Helmert1906 6378200 298.3
Hough1960 6378270 297
IAG1975 6378140 298.257
IndonesianNationalSpheroid 6378160 298.247
International1924 6378388 297
Krassowsky1940 6378245 298.3
NWL9D 6378145 298.25
Plessis1817 6376523 308.64
PZ90 6378136 298.2578
Struve1860 6378298.3 294.73
WarOffice 6378300 296
WGS72 6378135 298.26
WGS84 6378137 298.2572

投影方法(gma.crs.ProjMethod)

投影(类) 中文名
Aitoff 埃托夫投影
AlbersConicEqualArea 阿尔伯斯等积圆锥投影
AzimuthalEquidistant 等距方位投影
Bonne 彭纳
CassiniSoldner 卡西尼-斯洛德投影
CompactMiller 紧凑型米勒投影
CylindricalEqualArea 圆柱等积投影
EckertI 埃克特 I 投影
EckertII 埃克特 II 投影
EckertIII 埃克特 III 投影
EckertIV 埃克特 IV 投影
EckertV 埃克特 V 投影
EckertVI 埃克特 VI 投影
EquidistantConic 等距圆锥投影
Equirectangular 等距柱状投影
LambertAzimuthalEqualArea 兰伯特方位等积投影
Mercator2SP 墨卡托投影(2标准纬线)
Mollweide 摩尔维特投影
NaturalEarth 自然地球投影
Polyconic 多圆锥投影
Robinson 罗宾森投影
Sinusoidal 正弦曲线投影
Stereographic 通用极球面投影
Times 泰晤士投影
WinkelI 温克尔 I 投影
WinkelII 温克尔 II 投影

本初子午线(gma.crs.PRIMEMs)

本初子午线名称 对应中文名 经线(°)
Athens 雅典 23.7163375
Bern 伯尔尼 7.439583333
Bogota 波哥大 -74.08091667
Brussels 布鲁塞尔 4.367975
Ferro 费罗 -17.66666667
Greenwich 格林尼治 0
Jakarta 雅加达 106.8077194
Lisbon 里斯本 -9.131906111
Madrid 马德里 -3.687938889
Oslo 奥斯陆 10.72291667
Paris 巴黎 2.337229167
Paris_RGS 巴黎 2.337208333
ReferenceMeridian 参考经线 0
Rome 罗马 12.45233333
Stockholm 斯德哥尔摩 18.05827778
Luoyang 洛阳 112.5422641

角度单位(gma.crs.PRIMEMs)

角度单位名称 对应中文单位 每单位弧度(°)
Arcminute 弧分 0.000291
Arcsecond 弧秒 4.85E-06
Degree 0.017453
Grad 百分制度 0.015708
Gon 百分制度 0.015708
Microradian 微弧度 1E-06
Mil6400 密尔_6400 0.000982
Milliarcsecond 毫微秒 4.85E-09
MinuteCentesimal 百分制分 0.000157
Radian 弧度 1
SecondCentesimal 百分制秒 1.57E-06

线性单位(gma.crs.PRIMEMs)

单位 中文对照 每单位长度(m)
Meter 1
ClarkesLink 克拉克令 0.201166
GoldCoastfoot 黄金海岸英尺 0.3048
USSurveyFoot 美国测量英尺 0.304801
Foot 英尺 0.3048
ClarkesFoot 克拉克英尺 0.304797
link 0.201168
BritishChain 英国测链(1922年废弃) 20.11676
ClarkesYard 克拉克码 0.914392
Kilometer 千米 1000
IndianYard 印度码 0.914399
BritishChain 英国测链(贝诺伊特1895 B) 20.11678
BritishYard 英国码(希尔斯 1922) 0.914398
GermanLegalMeter 德国法定米 1.000014
BritishChain 英国测链(希尔斯 1922) 20.11677
BritishFoot 英国英尺(希尔斯 1922) 0.304799

6. 空间参考(gma.crs.SpatRef)

初始化一个一个空间参考。

7. gma 1.x 遗留函数

AlbersEqualArea
Mollweide
Robinson
CustomGCS

批量绘制世界地图

from gma import crs
from gma.map import plot, inres
import matplotlib.pyplot as plt# 获取所有支持的投影
ProjMethods = [m for m in dir(crs.ProjMethod) if '__' not in m if 'Utils' not in m]# 分别绘制 每个投影(默认参数) 下的世界地图
for m in ProjMethods:# 生成 投影 m 的投影坐标系PCS = crs.ProjCS(Name = 'GMA PCS', LinearUnit = 'Meter', ProjMethod = m, GCS = 'WGS84')# 1.初始化一个地图框,用于绘图MapF = plot.MapFrame(Axes = None, BaseMapProj = PCS, Extent = None)# 2.将内置的世界矢量图层添加到地图框MapL1 = MapF.AddLayer(inres.WorldLayer.Country, FaceColor = None, LineWidth = 0.2, EdgeColor = 'lightgray', Zorder = 1)# 3.经纬网MapF.AddGridLines(LONRange = (-180, 180, 30))# 4.地图框Frame = MapF.SetFrame(ShowBottom=False,ShowLeft=False,ShowRight=False,ShowTop=False)MapF.Axes.set_title(m, fontsize = 7, y = 0.93)# 保存每一张地图plt.savefig(f'D:/{m}.jpg' ,bbox_inches='tight', dpi = 600)

绘图结果展示

部分地图绘制异常,因此不在此处展示


















了解投影坐标系统,并在精美的地图上探索相关推荐

  1. GIS坐标系统(三):投影坐标系统/地图投影

    投影坐标就是我们常见的地图的坐标,这个坐标是我们进行地图制图和空间分析常用的坐标.一般而言,如果拿到数据是地理坐标,我们会对其进行投影,转化为投影坐标. 投影坐标系统是基于地图投影而建立的.投影坐标系 ...

  2. mysql象限和投影_地理坐标系统和投影坐标系统

    GIS中使用两种类型的坐标系统:地理坐标系统和投影坐标系统.每个投影坐标系统都基于一个地理坐标系统和一种地图投影. 每个投影坐标系统都基于一个地理坐标系统和一种地图投影. 地理坐标系统就是用数学公式模 ...

  3. R语言中的地理/投影坐标系统(下)[翻译]

    原文链接:https://mgimond.github.io/Spatial/coordinate-systems-in-r.html. 译文分上.下两篇,这里为下篇. ❝ 「译者注」:在原文的本部分 ...

  4. 地图上如何量方位角_地图投影怎么做到按条件(等角、等面积、等距)投影的?...

    总结: 1.地图开始是通过光学透视投射出来的,这就是投影的由来,后来人们开始通过数学计算变换坐标系的方式来进行抽象的投影,不再是拿着小灯泡照来照去了. 2.地图投影必定会产生变形,我们用长度比.面积比 ...

  5. R语言中的地理/投影坐标系统(上)[翻译]

    原文链接:https://mgimond.github.io/Spatial/coordinate-systems-in-r.html. 译文分上.下两篇,这里为上篇. 1 「关于PROJ环境更新的说 ...

  6. 在Leaflet地图上集成Echarts

    需求背景: 现在我要在地图上加上Echarts的散点图还有线集,看起来就很牛B的那种.上效果图: 需求分析: 我先看了看Echarts官网上有提供加载地图的例子,主要包括三种方式: 1.加载js格式的 ...

  7. 地图球形显示html,球形的地球怎么表示在平面地图上

    大家都知道地球是圆的,但是日常生活中我们看到的地图却都是平的.二维的地图当然方便人们携带使用,可如果你把一只橘子剥开,并把它的表皮平铺在桌面上,你会发现橘皮有些地方会起褶皱,有些地方则会破裂.那么,地 ...

  8. 地图上绘制任意角度的椭圆_地图上的总椭圆

    地图上绘制任意角度的椭圆 或者,如何选择下班后去海滩的最佳方式 (Or, how to choose the best way to walk to the beach after work) It ...

  9. unity三维地图的经纬度如何在二维地图上表示_安全数据分析:数据点—地图—线性回归...

    一次性进群,长期免费索取教程,没有付费教程. 教程列表见微信公众号底部菜单 进微信群回复公众号:微信群:QQ群:460500587 微信公众号:计算机与网络安全 ID:Computer-network ...

最新文章

  1. sql报表按月统计_如何通过INTOUCH组态软件做EXCEL报表(含代码)
  2. 【django】如何搭建虚拟环境(解决mkvirtualenv:未找到命令)
  3. Javascript代码在线整理工具源码
  4. 一文看懂用Python读取Excel数据
  5. tqdm使用(Python进度条)
  6. Spring Cloud Sleuth + Zipkin + RabbitMQ 监控微服务应用(二)
  7. 反编译那些事儿(六)—所编译得.class文件带有$符号
  8. fckeditor java 使用方法_FCKeditor使用说明
  9. 照片宽高比怎么设置_【经验分享】照片处理
  10. 基于JMF RTP的音视频传输
  11. 为Ubuntu搭建的WordPress博客配置自己的域名
  12. PC端如何使用ITunes无线连接ios手机
  13. C语言使用结构体给另一个同类型结构体赋值
  14. Android 天气APP(十三)仿微信弹窗(右上角加号点击弹窗效果)、自定义背景图片、UI优化调整
  15. C#程序设计之windows应用程序设计基础
  16. 最短路 HDU - 2544 (最短路)
  17. 英语不好学计算机专业可以吗,英语不好学什么专业好,计算机专业好毕业吗
  18. linux一次压缩多个文件,同时解压多个zip文件
  19. c语言读取24位BMP文件并实现翻转90度、180度、270度
  20. 网众无盘0基础入门学习图文版已完结

热门文章

  1. 【FPGA——Cyclone Ⅳ学习笔记】五.数码管静态显示(EP4CE6F17C8)
  2. exp数据导出,imp数据导入
  3. WIN10安装时msxml4.0提示2502、2503解决办法
  4. 企业员工管理系统开发
  5. VUE的项目中怎样修改浏览器窗口的 LOGO
  6. 让每一个国人去思考,21世纪是不是中国人的世纪?
  7. Kettle: 数据库查询/数据库连接
  8. gRPC和HTTP区别
  9. rxjava 二:简单理解Disposable
  10. spark企业经典案例之手机app流量统计