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. 第2章 深入分析java I/O的工作机制(下)

    2.6 设计模式解析之适配器模式 2.6.1 适配器模式的结构 把一个类的接口变换成一客户端能接受的另一个接口. Target(目标接口): 要转换的期待的接口. Adaptee(源角色):需要适配的 ...

  2. VS2012编译Lua5.3.1

    编译静态库: 1.新建Win32控制台应用程序Lua5.3,下一步,应用程序类型选择:DLL,空项目,完成. 2.项目名右键属性,配置属性--项目默认值--配置类型:静态库(.lib) 3.头文件上右 ...

  3. Android Binder机制中的异步回调

    “Binder通信是同步而不是异步的”,但是在实际使用时,是设计成客户端同步而服务端异步. 看看Framwork层的各service类java源码便会知道,在客户端调用服务端的各种方法时,通常会传递一 ...

  4. 浏览器访问IPv6地址

    http://[IPv6]:port/index.html http://[3ffe:3201:1200:1::91]:8080/index.html 目前现在的网络运营商基本都不支持基于IPv6地址 ...

  5. c++builder PM2.5

    c++builder PM2.5 TMemoryStream *ms = new TMemoryStream(); this->NetHTTPClient1->Get("http ...

  6. mvc 实体类 自定义验证特性

    mvc 实体类验证的时候 如果有多个验证特性需要在属性上层叠很多个验证特性,显得属性特别臃肿并且也不够直观,极大地影响我使用它的兴趣,所以我想自定义一个验证特性,然后将所有需要验证的情形全部放在一个特 ...

  7. 微信小程序中在页面中实现下拉刷新显示提醒语后在消失

    最近在做小程序的时候遇见一个问题,就是页面要下拉刷新给客户一个提醒语,查看了小程序的官方文档 这里有个注意点:如果你是一页进行下拉刷新就在那个文件夹的json里面加上"enablePullD ...

  8. python文件处理-读、写

    Python中文件处理的操作包括读.写.修改,今天我们一起来先学习下读和写操作. 一.文件的读操作 例一: #文件读操作 f = open(file="first_blog.txt" ...

  9. Python基础—流程控制

    一.Python流程控制 计算机程序在解决某个具体问题时,包括三种情形,即顺序执行所有的语句.选择执行部分的语句和循环执行部分语句,这正好对应着程序设计中的三种程序执行结构流程:顺序结构.选择结构和循 ...

  10. Tornado之抽屉实战(3)--注册

    知识点应用:标签绑定事件,jQuery获取用户值-->AJAX发送数据-->后台路由系统-->业务逻辑处理-->ORM数据操作-->write返回-->AJAX回调 ...