Add arrows to surface plot to represent wind direction

10 Ansichten (letzte 30 Tage)
mashtine
mashtine am 23 Sep. 2015
Kommentiert: mashtine am 24 Sep. 2015
Hi there,
I am seeing a lot of information about the quiverm function but I only have my wind direction data in degrees and not in the u and v components. Is there a simple way to project a matrix of wind direction values (360 degrees) onto a sufacem plot? Perhaps there is a way to add and arrow and align it based on the wind direction value? I do not want to add magnitude as well, just direction.
Many thanks,
  7 Kommentare
mashtine
mashtine am 23 Sep. 2015
Hi Kirby,
I believe the NCL website is giving the correct data as it will produce the correct wind direction for the negative quadrants. I am also getting the expect wind direction (easterly winds). For instance,
atan2(sind(181),cosd(181))*r2d
ans =
-179
where I should not be getting a negative direction but degrees in 0 to 360. I believe it is accounting for matlab use of the atan2 function as this differs in some software
Kirby Fears
Kirby Fears am 23 Sep. 2015
-179 is the correct answer.
-179+360=181
The NCL website adds 180 to this, which would be
-179+180=1, which is incorrect.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Kirby Fears
Kirby Fears am 23 Sep. 2015
Bearbeitet: Kirby Fears am 23 Sep. 2015
I'm posting an example as described in my earlier comment.
Code below creates a 10x10 grid of arrows that are all pointing at 120 degrees.
x=repmat(1:10,10,1);
y=x';
deg=120; % all points have same direction
% if you have a degree array the same size as x,
% you can use cosd and sind on "deg" without
% using repmat after
u=repmat(cosd(deg),size(x));
v=repmat(sind(deg),size(x));
% you can multiply u and v by magnitude of required
quiver(x,y,u,v);
  5 Kommentare
Thorsten
Thorsten am 24 Sep. 2015
Use
cosd(90 - deg)
sind(90 - deg)
mashtine
mashtine am 24 Sep. 2015
Thanks a lot Thorsten! As the I would like the arrows to point to where the wind is going to, I will use
cosd(270 - deg)
sind(270 - deg)
That seems to be working well for all degrees.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Vector Fields finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by