How to get back data from quiver function?

조회 수: 10 (최근 30일)
Yuvarajendra Anjaneya Reddy
Yuvarajendra Anjaneya Reddy 2023년 1월 8일
Let's say I create a quiver plot with X, Y, U and V. If we think in the sense of particles, consider 'n' number of particles that particles have location [X,Y] and corresponding velocities [U, V]. The result from using 'quiver' function is, I get a vector plot that has vectors indicating direction and magnitude of particle displacement. This means that the particles have new locations [X1, Y1]. Is there a way to get this new location data?
I have checked the "get(hQ, 'Xdata')", function that gets me the original data that I have provided to the 'quiver' function, but I could not find the updated location data as inferred from the quiver plots.
I also, understand that scaling the arrows can have an impact on the new locations [X1, Y1]. But, that can not be a concern as of now. Any help is appreciated. Thanks in advance.

채택된 답변

Adam Danz
Adam Danz 2023년 1월 8일
편집: Adam Danz 2023년 1월 8일
> the particles have new locations [X1, Y1]. Is there a way to get this new location data?
If you already have the X, Y, U and V values, then the new location is
xnew = x+u;
ynew = y+v;
N.B. These coordinates will match the location of quiver arrow heads only when scaling is turned off.
Examples:
x = rand(1,20)*20 - 10;
y = rand(1,20)*10 + 40;
u = rand(1,20)*6 - 3;
v = rand(1,20)*10 - 5;
quiver(x,y,u,v,'off')
x1 = x + u;
y1 = y + v;
hold on
plot(x, y, 'bo') % mark arrow tail
plot(x1, y1, 'rs') % mark arrow head
  댓글 수: 5
Adam Danz
Adam Danz 2023년 1월 9일
In quiver(x,y,u,v), u and v are the horizontal and vertical components of the vector that starts at (x,y). You can use any units for u and v as long as they are consistent between u and v. For example, u and v could represent pressure or miles-per-3-hours instead of mph. Your choice of units affects how you interpret the magnitude (or length) of the resultant vector which shares the same units as U and V.
Yuvarajendra Anjaneya Reddy
Yuvarajendra Anjaneya Reddy 2023년 1월 10일
@Adam Danz Thank you.. It is much clear now..

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

MJFcoNaN
MJFcoNaN 2023년 1월 8일
Hello,
The vector field is instantaneous, therefore, you have to provide the increment of time for getting a new proximate location. Or you can calculate it from a time series of vector fields.
  댓글 수: 1
Yuvarajendra Anjaneya Reddy
Yuvarajendra Anjaneya Reddy 2023년 1월 8일
@MJFcoNaN Thank you for your answer. Involving time variable can get tricky and complex in the code I'm using, anyways I appreciate the valid comment.

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Vector Fields에 대해 자세히 알아보기

제품


릴리스

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by