This blog shows you how to calculate and symbolize wind or current speed and direction when the underlying data is stored as U and V vectors.  In order to capture the speed and direction of wind or a water current, anemometers or Doppler current profilers measure the velocity of the wind or water in two perpendicular directions, U and V.  U is the velocity toward east and V is the velocity toward north.  U is sometimes referred to as the zonal velocity and V the meridional velocity.  Using U and V, both the speed and direction of the wind or water current can be calculated.

Storing information about the flow of wind or water as vectors provides flexibility in how we calculate direction.  This is important because meteorologists and oceanographers describe the flow of wind differently.  Oceanographers prefer to describe wind in terms of the “direction of mass flow” or in other words the direction towards which the wind is blowing. In the oceanographic convention, wind flowing from the south to the north is symbolized by an arrow pointing north.  Meteorologists use an arrow or a special symbol called a wind barb to show the direction from which the wind is blowing.  The head of the arrow or wind barb points in the direction from which the wind is blowing.  In the meteorological convention, a wind blowing from west to east is symbolized by an arrow pointing west.  Water currents are almost always symbolized using the oceanographic convention.

Displaying Direction

To correctly display wind or current direction in ArcMap, the U and V components must be converted to a symbol rotation angle.  The steps below assume that you have a point feature class with the attribute fields u and v.  To calculate the rotation, follow the steps below:

  1. Right-click the point layer in the table of contents.
  2. Click Properties and click the Symbology tab.
  3. Click the Symbol.  The Symbol Selector dialog box opens.
  4. Choose an arrow or wind barb whose head is pointing north.
  5. Click OK to close the Symbol Selector dialog.
  6. Click Advanced and choose Rotation from the drop-down list.  The Rotation dialog box opens.
  7. Choose <expression> in the drop-down list.
  8. Click the Expression Builder button to provide the expression to use for rotating the symbol.
  9. Specify one of the following expression:
    1. Oceanographic Convention: (180/3.14) * Atn2([u],[v])
    2. Meteorological Convention:  (180/3.14) * Atn2([u],[v])+180

Note: The formulas above are correct only if U and V are measured relative to a grid where true north consistently points straight up (e.g. no rotation). Otherwise, a convergence angle correction must be applied based on the projection of the data.

  1. Click OK to close the Expression Builder dialog.
  2. Click Geographic for the Rotation Style.
  3. Click OK on all dialog boxes.

This image shows the Symbology tab and Symbol Selector with the steps marked to apply symbol rotation.

This image shows the Expression Builder dialog with the steps marked to apply symbol rotation.

Displaying Speed

Using a similar procedure, U and V components can be used to calculate and display wind or current speed in ArcMap.

  1. Right-click the point layer in the table of contents.
  2. Click Properties and click the Symbology tab.
  3. Click Advanced and choose Size from the drop-down list.  The Size dialog box opens.
  4. Choose <expression> in the drop-down list.
  5. Click the Expression Builder button to provide the expression to use for the size of the symbols.
  6. Specify the following for the expression: Sqr([u]**2 + [v]**2)Tip:  ArcMap assumes that the size of the symbol returned from the expression is in points (1/72 of an inch).  If the wind or current speeds are relatively low in your data, the symbols may be too small and cartographically unpleasing.  You can adjust the size of the symbols by including a scaling factor in the formula.  For example, Sqr([u]**2 + [v]**2) * 10 will increase the size of the symbols by a factor of 10.
  7. Click OK to close the Expression Builder dialog.
  8. Click OK on all dialog boxes.

from : https://blogs.esri.com/esri/arcgis/2013/07/17/displaying-speed-and-direction-symbology-from-u-and-v-vectors/

Displaying Speed and Direction Symbology from U and V vectors (转)的更多相关文章

  1. Unity Glossary

    https://docs.unity3d.com/2018.4/Documentation/Manual/Glossary.html 2D terms 2D Physics terms AI term ...

  2. 《Note --- Unreal 4 --- PersonaHowToMovement》

    https://docs.unrealengine.com/latest/CHN/Gameplay/HowTo/CharacterMovement/index.html 这里的demo是按照一些per ...

  3. jquery-leonaScroll-1.3-自定义竖向自适应滚动条插件

    下载链接地址:https://share.weiyun.com/9ac3ca3fb29648bb1aad1b83a76b123c (密码:4y9t)[含mini版] 欢迎使用leonaScroll-1 ...

  4. jquery-leonaScroll-1.2-自定义滚动条插件

    leonaScroll-1.2.js 下载链接地址:http://share.weiyun.com/bb531dd6b1916c0023c176897182dc15 (密码:iZck)[内含压缩版] ...

  5. Unity3D 第一人称控制器 C#脚本

    CharacterMotor.cs using UnityEngine; using System.Collections; /** * @Author : www.xuanyusong.com */ ...

  6. 利用Native Client OLEDB 11 高效率地对SQL SERVER 进行查询和插入操作

    前言: 鄙司原始用的都是ADO来访问数据库,而我现在着手的项目是从我的GPS历史数据库中,取出历时数据的一个接口,一个DLL.用ADO写完之后,测试下来,平均4000条的数据,需要 180 毫秒左右. ...

  7. 弄个知乎的粒子动态背景_实践particles.js

    好久没登录知乎,发现他们的登录页面粒子动态效果蛮炫的,查一下代码用了Particles.js基于Canvas画布创建粒子颗粒效果. 上图 上图:   感觉有比格,就照着弄了一个,玩玩.   githu ...

  8. HDOJ 4717 The Moving Points

    The Moving Points Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others ...

  9. GLSL语言基础

    from http://www.kankanews.com/ICkengine/archives/120870.shtml 变量 GLSL的变量命名方式与C语言类似.变量的名称可以使用字母,数字以及下 ...

随机推荐

  1. (转)Makefile经典教程(掌握这些足够)

    该篇文章为转载,是对原作者系列文章的总汇加上标注. 支持原创,请移步陈浩大神博客: http://blog.csdn.net/haoel/article/details/2886 makefile很重 ...

  2. Object-C 多线程中锁的使用-NSLock

    在多线程的编程环境中,锁的使用必不可少! 于是,今天来总结一下为共享资源加锁的操作方法.   一.使用synchronized方式   //线程1 dispatch_async(dispatch_ge ...

  3. Spring缓存源码剖析:(一)工具选择

    从本篇开始对Spring 4.3.6版本中Cache部分做一次深度剖析.剖析过程中会对其中使用到的设计模式以及原则进行分析.相信对设计内功修炼必定大有好处. 一.环境及工具 IntelliJ IDEA ...

  4. PHP面向对象深入研究之【了解类】与【反射API】

    了解类 class_exists验证类是否存在 <?php // TaskRunner.php $classname = "Task"; $path = "task ...

  5. python开发模块基础:序列化模块json,pickle,shelve

    一,为什么要序列化 # 将原本的字典.列表等内容转换成一个字符串的过程就叫做序列化'''比如,我们在python代码中计算的一个数据需要给另外一段程序使用,那我们怎么给?现在我们能想到的方法就是存在文 ...

  6. 2014.9.30 Double转字符

    (57.0/60.0).ToString("f2")="0.95" 等于 string.Format("{0:F2}",57.0/60)=& ...

  7. Java面向对象-package import关键字

    Java面向对象-package import关键字 package包关键字,在java中,有包的概念,主要是用来归类 分类作用: 便于项目的开发和维护: 这里截取随便截取一个我最近在开发的一个开源工 ...

  8. 页面中CSS的四种引入方式的介绍与比较

    转自:https://blog.csdn.net/qq_38689666/article/details/79039392 一:行内式 <p style="color:red" ...

  9. web表单disable问题

    Web表单提交之disabled问题 例如,有如下表单 <form id="inputForm" action="shorttermrental.action&qu ...

  10. 【Dubbo学习】

    dubbo的介绍 dubbo是一个分布式的开源框架,其核心部分如下: 1.服务提供者:provider 2.服务消费者:consumer 3.注册中心:registry (仅仅只是负责通知) 服务者在 ...