很多人都见过风向图,直观形象,也是地图数据和现实数据在可视化上很好的结合。

万码学堂,电脑培训,计算机培训,Java培训,JavaEE开发培训,青岛软件培训,软件工程师培训

 

       这是我见的第一个风向图,记得是2012年吧,当时觉得很有意思,作为一名技术人员,自然好奇它是如何做到的,是Canvas还是SVG?但当时没深究。最近正好有人(大哥)提到了这个,不妨深入了解,一探究竟。于是乎,发现原来还有这么多玩法,大同小异,比如说这个,来自earth.nullschool.net:

 

万码学堂,电脑培训,计算机培训,Java培训,JavaEE开发培训,青岛软件培训,软件工程师培训

 

      当然还有来自度娘开源的echarts-x的:

万码学堂,电脑培训,计算机培训,Java培训,JavaEE开发培训,青岛软件培训,软件工程师培训

 

      基本上,这三个效果图基本涵盖了目前风向图的技术点和功能点(我自己的看法,因为windyty是基于earth.nullschool写的,前者多了一个worker线程处理数据,而后者在github上开源)。不知道哪一个最对你的胃口?对我而言,图1简单易懂,可以快速掌握风向图的实现;图2是实时的全球风向数据,而且是二进制格式,是大数据传输的一个方案;图3则采用WebGL实时渲染,算是大数据渲染的一个方案,所以各有千秋。正好本文就结合这三个例子说一下其中处理好的地方,也是一个由易到难的过程。

原理

      乍看上去,多少会觉得无从下手。这是怎么做到的?其实吧,懂与不懂就是那一层纸,就看你愿不愿意戳破而已。我们先从数据说起。

      首先介绍一下向量场(Vector Field)的概念。在维基百科的解释是:在向量分析中,向量场是把空间中的每一点指派到一个向量的映射。物理学中的向量场有风场、引力场、电磁场、水流场等等。如图,下面是一个二维的向量场,每一个点都是一个向量。

延伸阅读

学习是年轻人改变自己的最好方式-Java培训,做最负责任的教育,学习改变命运,软件学习,再就业,大学生如何就业,帮大学生找到好工作,lphotoshop培训,电脑培训,电脑维修培训,移动软件开发培训,网站设计培训,网站建设培训学习是年轻人改变自己的最好方式