我们的地球是圆的,而我们的纸张是平面。为了将地球绘制在平面纸张上,我们需要将地球表面投影到平面上。地图投影的实质是建立空间地理坐标和平面直角坐标关系的过程。
交流群里有读友提问:如何在地球投影中添加指定的纬圈。我抽空尝试了一下,分享给大家。
最近的一段时间,一直在研究绘制地图的相关知识,也在网上查找了很多资料,在这个过程中,无意中发现了两个超级惊艳的网站,下面就介绍给大家~
% 该函数选择了以本初子午线和赤道(0°纬度,0°经度)为中心的Robinson投影
上一篇说了下坐标系,说的都是地理坐标系,但是地球不管是球体还是椭球体,电子地图还是需要一个平面来展示,所以就会需要一个投影坐标系。有投影坐标系那就有投影,简单了解下地图投影(Map Projection)。
随着互联网在各行各业的影响不断深入,数据规模越来越大,各企业也越来越重视数据的价值。作为一家专业的数据智能公司,个推从消息推送服务起家,经过多年的持续耕耘,积累沉淀了海量数据,在数据可视化领域也开展了深入的探索和实践。
地图是认识和分析研究客观世界的常用手段,尽管地图的表现形式发生了种种变化,但是依然可以认为构成地图的主要因素有三:地图图形、数学要素和辅助要素。
数据科学中一种常见的可视化类型是地理数据。Matplotlib 用于此类可视化的主要工具是 Basemap 工具包,它是位于mpl_toolkits命名空间下的几个 Matplotlib 工具包之一。不可否认,Basemap 使用时有点笨拙,甚至简单的可视化渲染也要花费更长的时间,超出你的想象。
投影坐标系统 PCS(Projection Coordinate System),它也叫非地球投影坐标系统 (notearth),或者再简单点叫平面坐标系统,也就是使用基于 X,Y 值的坐标系统来描述地球上某个点所处的位置
proj 库是一个开源的库,主要用于地理坐标系之间的转换和地图投影。它被广泛应用于地理信息系统(GIS)和其他需要坐标转换和地图投影的应用中。
在数据可视化中,除了常见的折线图条形图,还有一种很常见的图示,那就是地图。今天呢,我们就说说地图中的那些门道。
地球近似为一个“椭球体”,在不考虑高程的情况下其实经纬度坐标就是描述了某点在球面的位置。在没有电脑、没有数字化地图的时代最实用的是纸质地图,但纸质地图是平面的,要把地“球”展开到地图的“平面“上(把地球在一张纸上“画”出来)就需要投影(Projection)。
GitBook是使用Git管理书籍项目,使用Markdown撰写书籍,并使用GitHub和GitBook网站进行托管的一个实用工具。下面简单说一下新手如何使用该强大的工具。
文中代码与数据请点击https://pan.bnu.edu.cn/v/link/view/0cd746194a1e42858583e84ac7fc4e40直接下载,不需要转存。
随着接触的地图种类越来越多,每种产品对地图服务的坐标系的要求不同,今天遇到了整理的好文,整理记录分享。
Google地图采用的是Web墨卡托投影(如下图),为了方便忽略了两极变形较大的地区,把世界地图做成了一个边长等于赤道周长的正方形(赤道半径为6378137米),原点在正方形中心,即经纬度为(0,0)处。Web墨卡托投影的X,Y坐标取值范围为:[-20037508.3427892,20037508.3427892],对应的经度取值范围为[-180,180],对应的纬度范围则为[-85.05112877980659,85.05112877980659]。具体投影解释请参考墨卡托投影:
给定向量场的 东西 和 南北 方向分量以及经纬度点,然后对向量进行旋转,使向量场在地图投影上以适当的方向显示。
所谓地图投影,是利用一定数学法则把地球表面的经、纬线转换到平面上的理论和方法。由于地球是一个赤道略宽两极略扁的不规则的梨形球体,故其表面是一个不可展平的曲面,所以运用任何数学方法进行这种转换都会产生误差和变形,为按照不同的需求缩小误差,就产生了各种投影方法,eg:墨卡托投影,高斯克吕格投影, Lambert__投影,UTM__投影…
cf-plot 是一套 Python 绘图案例,用于绘制气候研究人员常用的等值线图、矢量图和折线图。制作等值线图的数据可通过cf-python传递给 cf-plot,如下例所示:
本文作者为国外制图师希瑟·史密斯,由点点GIS翻译发布,如有错漏之处请后台留言指出
这部分包含的时 wrf-python 模块中的API,如果wrf-python提供的函数不能满足你的需求,你也可以根据已有的API重新编写一个处理函数或是其它的诊断函数。当然,大多数时候我们仅需要wrf-python已经提供的诊断函数和其它可调用函数,可能都不会使用到这些API。
最初的matlab完美白化的脚本是3年多之前在气象家园论坛发布的。当时是我们大师姐想要用matlab白化,然后就有了最初的版本,但最初的版本不支持m_map。虽然最后给了一个支持m_map的思路,但是没有给出具体实现的完整代码。
Python 环境下常用的地图绘制包是 Basemap,Cartopy,geopandas,KeplerGl,GeoViews等等,我以前常用的是Basemap,但无奈官方已经在2020年更新了,官方推荐使用Cartopy作为替代。
自动导入 Stack Overflow 上该关键字的高票回答里能跑起来的代码!面向 stackoverflow 编程?
mpl_toolkits.basemap.Basemap(llcrnrlon=None, llcrnrlat=None, urcrnrlon=None, urcrnrlat=None, llcrnrx=None, llcrnry=None, urcrnrx=None, urcrnry=None, width=None, height=None, projection=’cyl’, resolution=’c’, area_thresh=None, rsphere=6370997.0, ellps=None, lat_ts=None, lat_1=None, lat_2=None, lat_0=None, lon_0=None, lon_1=None, lon_2=None, o_lon_p=None, o_lat_p=None, k_0=None, no_rot=False, suppress_ticks=True, satellite_height=35786000, boundinglat=None, fix_aspect=True, anchor=’C’, celestial=False, round=False, epsg=None, ax=None)
本篇系统介绍了个人对投影的理解,包括投影的数学概念和主要应用,以及如何在频域(傅里叶变换)和球面(球谐)上进行投影的相关内容。最后介绍了UE中球谐函数的实现细节。
对于创建平滑图形或使用 barbs 或 quiver 绘图时非常有用。当使用 maskoceans 函数时也非常有用。
最近学习地理信息可视化总是遇到投影的麻烦,包括前段时间输出两篇关于simple features的分享中,其中没有特别处理投影的问题,老司机一看就能看出其中存在的投影问题。
大地测量学中,将球体投影到平面上有无数种算法,也可以分为无数类:https://map-projections.net/projections-list.php,但常用的有以下几种分类:
需求:大家看到诸多文献使用卫星云图作为天气形势系统介绍时想必也想自己也为文章中加一张,那么卫星云图如何叠加降水图呢 面向群体:需要使用卫星云图进行天气学分析或天气系统阐释的小伙伴,当然你喜欢卫星云图做壁纸也可以画着玩 应用场景:汇报or写作
Tissot 指示图或 Tissot 歪曲椭圆是在地图上显示圆,展示了这些圆是如何适应投影的(即,在不同的位置出现了球面相同的曲率)。通常,不同的位置会出现不同的扭曲度。
由于地球是一个赤道略宽两极略扁的不规则的梨形球体,表面是一个不可展平的曲面,而地图通常是二维平面,因此在地图制图时首先要考虑把曲面转化成平面。然而,从几何意义上来说,球面是不可展平的曲面。要把它展成平面,势必会产生破裂与褶皱。这种不连续的、破裂的平面是不适合制作地图的,所以必须采用特殊的方法来实现球面到平面的转化。
WRF模式是数值天气预报和大气模拟系统,其开发目的就是用语研究和实际应用。运行WRF模式时,可以利用多种初始场数据来驱动,然后配置好选项之后便可以模拟天气过程(说的好像很简单的样子==)。
之前研究了 GIS,接触到了很多 GIS 的概念。因此找了《 ArcGIS 地理信息系统教程(第 4 版)》来看。书的版本比较老了,不过一些基本概念还是想通的,因为我重点在于 GIS 概念整理,而不是 ArcGIS。
最近天气学原理需要绘制课本插图来做 翻转课堂,因此整理了课本第四章几个典型图片的画法和代码,共需要的人使用。
欢迎大家来到“Python从零到壹”,在这里我将分享约200篇Python系列文章,带大家一起去学习和玩耍,看看Python这个有趣的世界。所有文章都将结合案例、代码和作者的经验讲解,真心想把自己近十年的编程经验分享给大家,希望对您有所帮助,文章中不足之处也请海涵。
数据可视化的工具和程序库已经极大丰盛,当你习惯其中一种或数种时,你会干得很出色,但是如果你因此而沾沾自喜,就会错失从青铜到王者的新工具和程序库。如果你仍然坚持使用Matplotlib(这太神奇了),Seaborn(这也很神奇),Pandas(基本,简单的可视化)和Bokeh,那么你真的需要停下来了解一下新事物了。例如,python中有许多令人惊叹的可视化库,而且通用化程度已经很高,例如下面这五个:
Viewer 类是 cesium 的核心类,是地图可视化展示的主窗口,cesium 程序应用的切入口,它提供了基本的虚拟地球显示和众多的控制选项.
定位器地图只有一项工作:显示某物在哪里。这意味着它只需要很少的信息:只需要一个特征区域的指示,以及足够的地理背景,让人们了解它在世界上的位置。保持定位器地图尽可能简单,以防止它在视觉上与主地图或主要故事竞争。
1 1 导读 128个或更少的字符用Wolfram语言能够创造什么样的惊喜?下面小编带领大家来欣赏在Wolfram Blog中发表的2016年Wolfram One-Liner大赛获奖者们的部分作品。
投影的数学意义 A projection is the transformation of points and lines in one plane onto another plane by c
如果您了解并使用上面提到的库,那么您就处于进化的正确轨道上。它们可以帮助生成一些令人拍案的可视化效果,语法也不难。一般来说,我更喜欢Plotly+Cufflinks和 D3.js. 以下详细道来:
VM19:1 Blocked script execution in 'about:blank' because the document's frame is sandboxed and the 'allow-scripts' permission is not set.
玩家行走,在UI左上角显示小地图,显示玩家所在的位置,并且实时更新。网上一般方法是用一台空中camera作为小地图投影,但是这样要响应小地图上的icon点击事件比较麻烦,为止这里使用一种新方案。
https://blog.csdn.net/weixin_44510615/article/details/90732373 https://blog.csdn.net/weixin_44510615/article/details/90732196
我在《大地经纬度坐标与地心地固坐标的的转换》这篇文章中已经论述了大地坐标系/地理坐标系的概念,简单来说就是由经度、纬度以及高程(BLH)确定的坐标系,它是一种曲面坐标。
领取专属 10元无门槛券
手把手带您无忧上云