爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
楼主: 沙颖凯

[源程序] [原创]MATLAB风场添加箭头标签的方法

  [复制链接]

新浪微博达人勋

发表于 2014-7-28 21:41:47 | 显示全部楼层
哇塞,太赞了~~~
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-7-29 15:02:31 | 显示全部楼层
非常感谢楼主分享。弱弱的问一句,如果画多个时次的图,如何用统一的比例(我的意思是现在画出来不同时次图25m/s红色标注的长度是不一样的,也就是说您定义的autoscale不同时次不一样,如何做到不同时次一样呢?)
密码修改失败请联系微信:mofangbao
回复 支持 1 反对 0

使用道具 举报

新浪微博达人勋

发表于 2014-7-29 15:14:03 | 显示全部楼层
貌似不考虑scale_factor即可,是吧?楼主加个好友吧,多多想你学习啊
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2014-7-29 17:15:45 | 显示全部楼层
wangmol 发表于 2014-7-29 15:14
貌似不考虑scale_factor即可,是吧?楼主加个好友吧,多多想你学习啊

不考虑scale_factor得到的箭头“不具有正确的长度”,无法作为标签(不过如果你仅是用来装饰就无所谓了,选一个小一点风速作为基准就看不出差别了)。

MATLAB画图时箭头长度是根据图中平均风速的大小确定的,如果几张图平均风速相差比较大,那是没法直接统一比例的,具体的做法是首先以一张图作为基准,然后在画其后的图时先计算后来的图与第一张图之间的scale_factor.

scale_standard=Get_Autoscale(longitude, latitude, v_standard, u_standard);
scale_current=Get_Autoscale(longitude, latitude,  u_current, v_current);
scale_factor=scale_standard/scale_current;
Handle=quiverm(latitude, longitude, v, u, 2.0*scale_factor);
% PAT: size "2.0" should in accord with what you used for u_standard, v_standard

然后这样画出来的图可以和u_standard, v_standard共用u_standard, v_standard的标尺,它自己就不需要标尺了(画出来也和u_standard, v_standard的一样)。
密码修改失败请联系微信:mofangbao
回复 支持 1 反对 0

使用道具 举报

新浪微博达人勋

发表于 2014-7-29 20:54:19 | 显示全部楼层
多谢楼主,回复这么详细,我再看看,理解一下。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-8-3 20:18:53 | 显示全部楼层
感谢楼主分享
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-8-6 16:52:10 | 显示全部楼层
非常有用 注释可以多一点
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-8-7 09:31:17 | 显示全部楼层
混钱下东西
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-8-7 12:47:29 | 显示全部楼层
试试。。。。。。。。。。。。。。。。
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

发表于 2014-8-24 17:14:41 | 显示全部楼层
谢谢分享~~
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表