how to graph vector fields containing scalar

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

Réponses (1)

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 commentaire

@수정 이 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)

Connectez-vous pour commenter.

Catégories

En savoir plus sur Vector Fields dans Centre d'aide et File Exchange

Commenté :

le 2 Août 2024

Community Treasure Hunt

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

Start Hunting!

Translated by