how to graph vector fields containing scalar

6 次查看(过去 30 天)
I'm trying to graph some vector fields .
F(x,y,z)-<1,2,z>
F(x,y)=<0.3, -0,4)
my code is look like this
>> [x,y,z]=meshgrid(-2:2,-2:2,-2:2);
>> u=1;
>> v=2;
>> s=z;
>> quiver(x,y,z,u,v,s)
Second one is similar.
>> [x,y,]=meshgrid(-2:2,-2:2);
>> u=0.3;
>> v=-0.4;
>> quiver(x,y, u,v )
I tried to use ones(size(v)) function but it doens't work.
Any help would be helpful. Thank you

回答(1 个)

Monisha Nalluru
Monisha Nalluru 2020-11-17
quiver used to for vector plot
The input arguments X,Y,U,V all should be of same size
In the above problem u,v should be same size of x,y
As an example
[x,y,]=meshgrid(-2:2,-2:2);
u=ones(size(x));
v=ones(size(x)) * 2;
quiver(x,y,u,v)
And inorder to increase the arrow length use scale argument
quiver(x,y,u,v,2) % scale the arrow length to 2 units
  1 个评论
VBBV
VBBV 2024-8-2
@수정 이 In first case, it is a 3D plot , so you require quiver3 plot instead of 2D quiver function
[x,y,z]=meshgrid(-2:2,-2:2,-2:2);
u=ones(size(x));
v=ones(size(x)) * 2;
w = z;
s = 'r'; % color
quiver3(x,y,z,u,v,w,s)

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Vector Fields 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by